当前位置: > 数据库 > Redis >

CentOS 6.4 安装Redis

时间:2016-06-04 15:14来源:linux.it.net.cn 作者:IT
学习环境

vm 10.1 + 默认、新装的干净 CentOS 6.4  64BIT系统


准备

1. redis 2.6.16版
    http://download.redis.io/releases/redis-2.6.16.tar.gz
安装计划及具体步骤笔记


一、计划

1. 下载redis稳定版本
2. 解压并安装redis,并放入合理的目录中
3. 手工启动redis,测试redis是否运行正常
4. 将redis加入开机自启动序列

二、具体步骤笔记

1. 默认安装的CentOS系统自带wget小工具,所以我们利用它来在linux系统里下载redis
(1)获取响应权限:su root
(2)规划好下载的目录:mkdir /usr/local/soft/
(3)进入新建的目录,准备下载:cd /usr/local/soft/
(4)下载redis最新稳定版:wget http://download.redis.io/releases/redis-2.6.16.tar.gz

2.  解压并安装redis,并放入合理的目录中
(1)解压tar包:tar zxvf redis-2.6.16.tar.gz
(2)进入解压后出现的新目录:cd redis-2.6.16
(3)编译源码:make
(4)校验编译是否正确:make test
        此时会有错误提示:You need tcl 8.5 or newer in order to run the Redis test
(5)根据以上错误提示,安装ActiveTcl 8.5 以上版本(我选的是最新的8.6版本,约20多MB,URL:http://downloads.activestate.com/ActiveTcl/releases/)


3. 手工启动redis,测试redis是否运行正常
(1)在当前redis目录中输入命令启动Redis:src/redis-server
(2)检查进程是否有Redis了:ps aux | grep redis,可以看见进程列表中有一个叫“src/redis-server”的进程了
(3)启动redis自带的客户端,进行测试:
        # src/redis-cli -- 启动客户端并连接本地Redis
        # set foo bar -- 提示 “ok”说明设置键值正常。
        # get foo -- 能够提示返回正确的“bar”,说明运行正常。
        # quit -- 退出客户端



4. 将Redis加入开机自启动序列
(1)redis.conf 配置文件里面的daemonize no 改成 daemonize yes (后加上的步骤,否则会导致系统启动时进入不了x windows界面)
(2)测试通过的自启动脚本:

 把以上脚本保存成/etc/rc.d/init.d/redis文件【见附件】  redis.zip (1 K) 下载次数:72 

(3)编辑/etc/rc.local文件,在最后一行加上bash /etc/init.d/redis start 即可


三、扩展知识

1. VM公司从2010年开始赞助Redis项目
2. CentOS 按照默认环境安装时,未安装 ActiveTcl  8.5以上版本,所以在验证Redis是否编译正确时需要自行安装。
3. yum list xxxx   可以检测并列出资源库中是否有提供可安装的xxxx的安装包及版本号


四、待解决的问题

1. 在将Redis配置成自启动脚本后,突然发现CentOS进入不了图形界面了,最后加载的进度条就停留在最右边。
此时用SSH客户端连接CentOS却一切正常,非常奇怪,目前未找到原因和解决办法。


解决办法:redis.conf 配置文件里面的daemonize no 没有改成 daemonize yes。修改成 yes后,问题解决。 



You need tcl 8.5 or newer in order to run the Redis test的处理:

wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz  
sudo tar xzvf tcl8.6.1-src.tar.gz  -C /usr/local/  
cd  /usr/local/tcl8.6.1/unix/  
sudo ./configure  
sudo make  
sudo make install 



(责任编辑:IT)
------分隔线----------------------------