redis安装和配置方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Redis 安装和配置方法
一服务器端的安装与配置
登陆 下载相应的redis版本资源
目前redis-2.6.16为稳定版。目前gms使用的是此版本
得到redis-2.6.16.tar.gz
执行
tar –zxvf redis-2.6.16.tar.gz
cd redis-2.6.16
make
编译工作完事之后,可以进入redis-2.6.16/src/
其中
Redis-server 为redis服务器端
Redis-cli 为用户指令端
<具体指令参见附录A>
二客户端的安装与配置
Redis为C语言提供的客户端在中能够找到,名称为hiredis。
具体包名为hiredis-master.zip
解压unzip hiredis-master.zip
cd hiredis-master
make
我们可以得到一个动态库libhiredis.so ,编译的时候需要链接到此动态库即可。
关于头文件方面对外的头文件只需引用hiredis.h即可。
三有关C语言的redis常用接口
hiredis是redis数据库的C接口,目前只能在linux下使用,几个基本的函数就可以操作redis 数据库了。
函数原型:redisContext *redisConnect(const char *ip, int port)
说明:该函数用来连接redis数据库,参数为数据库的ip地址和端口,一般redis数据库的端口为6379
该函数返回一个结构体redisContext。
函数原型:void *redisCommand(redisContext *c, const char *format, ...);
说明:该函数执行命令,就如sql数据库中的SQL语句一样,只是执行的是redis数据库中的操作命令,第一个参数为连接数据库时返回的redisContext,剩下的参数为变参,就如C 标准函数printf函数一样的变参。返回值为void*,一般强制转换成为redisReply类型的进行进一步的处理。
函数原型void freeReplyObject(void *reply);
说明:释放redisCommand执行后返回的redisReply所占用的内存
函数原型:void redisFree(redisContext *c);
说明:释放redisConnect()所产生的连接。
附录A
具体redis中文资料请参考
∙APPEND key value追加一个值到key上
∙AUTH password验证服务器
∙BGREWRITEAOF异步重写追加文件
∙BGSAVE异步保存数据集到磁盘上
∙BITCOUNT key [start] [end]统计字符串指定起始位置的字节数
∙BITOP operation destkey key [key ...]Perform bitwise operations between strings
∙BLPOP key [key ...] timeout删除,并获得该列表中的第一元素,或阻塞,直到有一个可用
∙BRPOP key [key ...] timeout删除,并获得该列表中的最后一个元素,或阻塞,直到有一个可用
∙BRPOPLPUSH source destination timeout弹出一个列表的值,将它推到另一个列表,并返回它;或阻塞,直到有一个可用
∙CLIENT KILL ip:port关闭客户端连接
∙CLIENT LIST获得客户端连接列表
∙CLIENT GETNAME获得当前连接名称
∙CLIENT SETNAME connection-name设置当前连接的名字
∙CONFIG GET parameter获取配置参数的值
∙CONFIG SET parameter value获取配置参数的值
∙CONFIG RESETSTAT复位再分配使用info命令报告的统计
∙DBSIZE返回当前数据库里面的keys数量
∙DEBUG OBJECT key获取一个key的debug信息
∙DEBUG SEGFAULT使服务器崩溃
∙DECR key整数原子减1
∙DECRBY key decrement原子减指定的整数
∙DEL key [key ...]删除一个key
∙DISCARD丢弃所有MULTI 之后发的命令
∙DUMP key导出key的值
∙ECHO message回显输入的字符串
∙EVAL script numkeys key [key ...] arg [arg ...]在服务器端执行LUA 脚本
∙EVALSHA sha1 numkeys key [key ...] arg [arg ...]在服务器端执行LUA 脚本
∙EXEC执行所有MULTI 之后发的命令
∙EXISTS key查询一个key是否存在
∙EXPIRE key seconds设置一个key的过期的秒数
∙EXPIREAT key timestamp设置一个UNIX时间戳的过期时间
∙FLUSHALL清空所有数据库
∙FLUSHDB清空当前的数据库
∙GET key获取key的值
∙GETBIT key offset返回位的值存储在关键的字符串值的偏移量。
∙GETRANGE key start end获取存储在key上的值的一个子字符串
∙GETSET key value设置一个key的value,并获取设置前的值
∙HDEL key field [field ...]删除一个或多个哈希域
∙HEXISTS key field判断给定域是否存在于哈希集中
∙HGET key field读取哈希域的的值
∙HGETALL key从哈希集中读取全部的域和值
∙HINCRBY key field increment将哈希集中指定域的值增加给定的数字
∙HINCRBYFLOAT key field increment将哈希集中指定域的值增加给定的浮点数
∙HKEYS key获取hash的所有字段
∙HLEN key获取hash里所有字段的数量
∙HMGET key field [field ...]获取hash里面指定字段的值
∙HMSET key field value [field value ...]设置hash字段值