C语言通过Hiredis访问redis数据库

C语言访问redis数据库

  1. 准备Hiredis库
    Centos7或8
    hiredis-0.11.0.tar.gz
    yum install redis
  2. 安装Hiredis库
    解压Hiredis压缩包
    tar -zcvf hiredis-0.11.0.tar.gz ./
    在Hiredis根目录执行
    make && make install
  3. 编辑动态库连接
    创建目录,并拷贝文件到目录
    mkdir /usr/lib/hiredis
    cp libhiredis.so /usr/lib/hiredis #将动态连接库libhiredis.so至/usr/lib/hiredis
    mkdir /usr/include/hiredis
    cp hiredis.h /usr/include/hiredis
    方法1:
    直接将路径/usr/local/lib路径加入到文件/etc/ld.so.conf文件的中。在文件/etc/ld.so.conf中末尾直接添加:/usr/local/lib
    方法2:
    echo ‘/usr/local/lib’ >>/etc/ld.so.conf
    ldconfig
    执行sudo /sbin/ldconfig以下,更新一下系统动态库配置
  4. 编写测试源码
    test.c和makefile放在相同目录下,执行make,目录下会生成test可执行文件
  5. 运行test
    ./test
    控制台打印1234
    Redis-cli可以查看有foo键值
    makefile文件
LIBDIR= -L/usr/local/lib  
LIBSO = -lhiredis  
CFLAG = -Wall -g  
  
all:test

test:test.o
	gcc ${CFLAG} -o $@ $< ${LIBDIR} ${LIBSO}  
%.o%.c:
	gcc -c -o $@ $^  
  
clear:
	rm -f *.o

test.c文件源码

#include <stdio.h>  
#include <hiredis/hiredis.h>  
  
int main()  
{  
    redisContext* conn = redisConnect("127.0.0.1",6379);  
    if(conn->err)   printf("connection error:%s\n",conn->errstr);  
  
    redisReply* reply = redisCommand(conn,"set foo 1234");  
    freeReplyObject(reply);  
  
    reply = redisCommand(conn,"get foo");  
  
    printf("%s\n",reply->str);  
    freeReplyObject(reply);  
  
    redisFree(conn);  
  
    return 0;  
  
}

注:动态库引用是关键,详细源码可以联系博主索取

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值