Lv.的博客

linux 下安装redis并用QT写客户端程序进行连接

 

1.安装redis。使用如下命令:

wget http://dowload.redis.io/redis-stable.tar.gz

tar xzf redis-stable.tar.gz

cd redis-stable

make(可以用make test 进行检查是否编译正确)

make intall

2.启动redis,使用如下命令

启动redis服务器

redis-server

启动redis客户端

redis-cli

默认情况下,server地址为127.0.0.1,port为6379

在redis-cli命令行下可以键入ping命令来查看是否连接成功,成功的话会返回PONG

在redis-cli下使用set命令来创建键值对,比如set key vlue命令,就是创建了关键字为key,值为value的命令、可以使用get命令来取值,比如set完上述关键字之后,利用get key

命令,会打印value.

3.使用QT做客户端连接

首先需要安装客户端的lib,我安装的是hiredis,使用如下命令进行安装。

git clone https://github.com/redis/hiredis 

cd hiredis

make  

sudo make install(复制生成的库到/usr/local/lib目录下) 

sudo ldconfig /usr/local/lib

安装之后要在QT项目中配置lib.

首先,新建QT Application项目

在.pro中添加配置文件,如下操作

LIBS+=-L/usr/local/lib -lhiredis

这样编译的时候就不会出现找不到函数的问题了。

我在UI中创建了一个button和一个textEdit,点击button就连接redis,来返回上面所set的key的value值。然后让这个value显示在textEdit中。

代码如下:

void MainWindow::on_pushButton_clicked()

{

  struct timeval timeout={2,0};

  redisContext* pRedisContext=(redisContext*)redisConnectWithTimeout("127.0.0.1",6379,timeout);

const char* command("get key");

redisReply* reply=(redisReply*)redisCommand(pRedisContext,command);

  QString str=reply->str;

  ui->textEdit->append(str);

}

这样就可以在文本框中显示了“value”。

posted @   Avatarx  阅读(2023)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2017-11-02 Retrotranslator使用简介(JDK1.5->1.4)
2015-11-02 解决Visual Studio 2010新建工程时出现『1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt』错误
2014-11-02 Lua的安装
点击右上角即可分享
微信分享提示