1、下载安装
1.1 下载包
注:在http://download.redis.io/releases查询需要下载的版本
wget http://download.redis.io/releases/redis-3.2.1.tar.gz
1.2 解压安装
tar -xvf redis-3.2.1.tar.gz
cd redis-3.2.1
make
make install
安装后会自动把redis-server,redis-cli,redis-benchmark,redis-check-aof,redis-check-dump复制到/usr/local/bin目录下
ls /usr/local/bin
- redis-server:Redis服务器的daemon启动程序
- redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
- redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
- redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况
2、测试redis
cd src && make test
当执行上述命令会有如下信息:
安装tcl
yum install tcl
cd src && make test 或者 ./runtest
3、配置
3.1 建立缓存目录
建立专门的文件夹用于存放redis的文件,作为redis缓存文件夹
3.2 配置config文件
vim redis.conf
修改daemonize no改成yes,表示将redis设置为后台运行,默认为非后台运行。
修改pidfile位置,指向redis缓存文件夹
修改logfile位置,指向redis缓存文件夹
修改dbfilename名字
修改dir(dbfilename存放目录),指向redis缓存文件夹
下面是redis.conf的主要配置参数的意义:
- daemonize:是否以后台daemon方式运行
- pidfile:pid文件位置
- port:监听的端口号
- timeout:请求超时时间
- loglevel:log信息级别
- logfile:log文件位置
- databases:开启数据库的数量
- save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
- rdbcompression:是否使用压缩
- dbfilename:数据快照文件名(只是文件名,不包括目录)
- dir:数据快照的保存目录(这个是目录)
- appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
- appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
4、启动和使用测试
4.1 指定配置文件启动
启动server redis-server /home/styuan/spinnaker/redis-3.2.1/redis.conf
4.2 启动控制台程序并使用
4.3 检测redis是否存在的几种方法
ps –ef | grep redis
netstat –lntp | grep 6379
停止redis
redis-cli shutdown
5、设置为系统服务
查看当前系统拥有的服务
chkconfig
此时redis只是能用,但是需要手动启动,并不友好,所以需要我们去把它设置为系统服务,并且开机自启。
5.1 配置启动脚本
推荐在生产环境中使用启动脚本方式启动redis服务。启动脚本 redis_init_script
位于位于Redis的 /utils/
目录下。
修改相应的文件配置:
#大致浏览下该启动脚本,发现redis习惯性用监听的端口名作为配置文件等命名,我们后面也遵循这个约定。 #redis服务器监听的端口 REDISPORT= #服务端所处位置,在make install后默认存放与`/usr/local/bin/redis-server`,如果未make install则需要修改该路径,下同。 EXEC=/usr/local/bin/redis-server #客户端位置 CLIEXEC=/usr/local/bin/redis-cli #Redis的PID文件位置 PIDFILE=/var/run/redis_${REDISPORT}.pid #配置文件位置,需要修改 CONF="/etc/redis/${REDISPORT}.conf"
5.2 配置配置文件环境
5.2.1 根据启动脚本要求,将修改好的配置文件以端口为名复制一份到指定目录。需使用root用户
mkdir /etc/redis
cp redis.conf /etc/redis/.conf
5.2.2 将启动脚本复制到/etc/init.d目录下,本例将启动脚本命名为redisd(通常都以d结尾表示是后台自启动服务)
cp redis_init_script /etc/init.d/redisd
6. 设置为开机自启动
此处直接配置开启自启动 chkconfig redisd on
将报错误: service redisd does not support chkconfig
问题解决办法如下:
必须把下面两行注释放在/etc/init.d/redis文件靠前的注释中:
# chkconfig:
# description: Redis is a persistent key-value database
上面的注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
再设置即可成功。
#设置为开机自启动服务器
chkconfig redisd on
#打开服务
service redisd start
#关闭服务
service redisd stop
7、附录
7.1 linux 运行级别
运行级别就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。这些级别在/etc/inittab文件里指定。这个文件是init程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。
不同的运行级定义如下:(可以参考Linux里面的/etc/inittab)
# 缺省的运行级,RHS用到的级别如下:
0:关机
1:单用户模式
2:无网络支持的多用户模式
3:有网络支持的多用户模式
4:保留,未使用
5:有网络支持有X-Window支持的多用户模式
6:重新引导系统,即重启
对各个运行级的详细解释:
0 为停机,机器关闭。
1 为单用户模式,就像Win9x下的安全模式类似。
2 为多用户模式,但是没有NFS支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本 电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是X11,进到X Window系统了。
6 为重启,运行init 6机器就会重启。
7.2 chkconfig用法
chkconfig命令可以用来检查、设置系统的各种服务
使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
参数用法:
–add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
–del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
–level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。
使用范例:
chkconfig –list 列出所有的系统服务
chkconfig –add redis 增加redis服务
chkconfig –del redis 删除redis 服务
chkconfig –level redis 2345 on 把redis在运行级别为2、3、4、5的情况下都是on(开启)的状态。