关于redis的安装和环境搭建
首先,进入redis官网,查看下载最新版本的redis
https://redis.io/
下载完成后回到Linux中,将下载的tar.gz包解压
建议放在/usr/local/src下
解压完成后,在local下建立目标安装目录,在管理员权限在执行make install命令,指定安装目录
安装成功如下:
将redis作为一个服务添加进自启动
将安装文件目录下的服务脚本redis_init_script拷贝到自己的/etc/init.d/目录下:
此时还不能添加进服务中,我们还需要对脚本做一些修改,vim刚才复制过来的脚本,修改如下:
$EXEC $CONF & ------》 转入后台运行
将redis配置文件拷贝到/etc/redis/${REDISPORT}.conf中
创建一个/etc/的目录,将redis的配置文件放入其中
我在/etc下新建了一个redis目录,拷贝过去注意对应服务脚本中指定的conf号
这时准备工作完成,可以将redis加入服务中让它启动了
可以在/etc/rc.d/rc.loacl文件中添加一下,让redis开机自启服务端
最后我们可以将redis加入系统命令中
修改/etc/profile,将redis所在目录添加进系统环境变量中:
应用这个文件
此时我们就可以直接通过命令直接调用了
关于redis的常用命令
可以在官网用测试端试用:http://try.redis.io/
增加:set (key) (value)
删除:del (key)
获取:get (key)
查询:exists (key)
设置过期时间:expire (key) (time)
移除过期时间:persist (key)
返回key所对应的value类型:type (key)
用 value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始:setrange (key) (offset) (value)
返回key所对应的字符串长度:strlen (key)
其他对应命令可参照:http://www.runoob.com/redis/r...
对于用C++代码来操作redis
首先网上提供api的很多,这里我选用的是hiredis,这个是我能找到的最方便的,而且据传闻用的人比较多,人多的自然使用起来功能比较齐全
首先进入github下载库文件:https://github.com/redis/hiredis
下载完成后执行进入目录执行make命令
随后执行安装(复制运行库)
执行ldconfig命令重新挂入库路径(当然重启也可以,重启的话系统会自动执行该操作)
之后就可以测试运行啦,试编译这个文件:
#include <hiredis/hiredis.h>
#include <iostream>
#include <string>
int main(int argc, char **argv)
{
struct timeval timeout = {2, 0}; //2s的超时时间
//redisContext是Redis操作对象
redisContext *pRedisContext = (redisContext*)redisConnectWithTimeout("127.0.0.1", 6379, timeout);
if((NULL == pRedisContext) || (pRedisContext->err))
{
if(pRedisContext)
{
std::cout << "connect error:" << pRedisContext->errstr << std::endl;
}
else
{
std::cout << "connect error: can't allocate redis context." << std::endl;
}
return -1;
}
//redisReply是Redis命令回复对象 redis返回的信息保存在redisReply对象中
redisReply *pRedisReply = (redisReply*)redisCommand(pRedisContext, "INFO"); //执行INFO命令
std::cout << pRedisReply->str << std::endl;
//当多条Redis命令使用同一个redisReply对象时
//每一次执行完Redis命令后需要清空redisReply 以免对下一次的Redis操作造成影响
freeReplyObject(pRedisReply);
return 0;
}
对了,记得要g++编译时加入动态链接库hiredis
——————————————————完成————————————————————
资料参考:
http://www.cnblogs.com/_popc/...
http://www.runoob.com/redis/r...
http://try.redis.io/
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。