生产环境当中,reis是以守护进程即系统的 daemon 进程去运行的,并且redis会随着系统启动而一起启动,下面就一起来配置一下。 本记录基于Redis3.2.8,CentOS6.5。
安装Redis
- 安装依赖tcl
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar -xzvf tcl8.6.1-src.tar.gz
cd /usr/local/tcl8.6.1/unix/
./configure
make && make install
- 安装redis
自己手动下载redis-3.2.8.tar.gz,并放置在/usr/local/
目录下:
tar -zxvf redis-3.2.8.tar.gz
cd redis-3.2.8
make && make install
运行完毕会提示进行test,不用管。
修改配置,Deamon启动
创建存放redis配置文件的目录:
mkdir /etc/redis
创建存放redis持久化文件的目录:
mkdir /var/redis/
mkdir /var/redis/6379
将redis的配置文件redis.conf复制到/etc/redis
目录中,并修改名称为 6379.conf
(因为redis_init_script
脚本中的CONF
配置了该指定目录下的文件名为:端口号.conf
,该脚本负责启动redis):
cp /usr/local/redis-3.2.8/redis.conf /etc/redis/
cd /etc/redis/
mv redis.conf 6379.conf
修改上面重命名的redis的配置文件 6379.conf
中的配置:
daemonize yes // 让redis以daemon进程运行
pidfile /var/run/redis_6379.pid // 设置redis的pid文件位置
port 6379 // 设置redis的监听端口号
dir /var/redis/6379 // 设置持久化文件的存储位置
设置随系统启动
在redis-3.2.8的utils目录下,有个负责启动redis的redis_init_script
脚本,将其复制到 /etc/init.d
目录当中:
cd redis-3.2.8/utils
cp redis_init_script /etc/init.d/
将该文件名修改为redis_6379
(6379为redis的默认端口号,可以通过修改redis_init_script
脚本的REDISPORT=6379属性来更改启动端口号):
cd /etc/init.d/
mv redis_init_script redis_6379
为redis配置文件赋予权限,并启动redis,:
chmod 777 redis_6379
./redis_6379 start
确认 redis 进程是否启动:
ps -ef | grep redis
类似如下结果即表明已启动:
root 28280 1 0 11:23 ? 00:00:00 /usr/local/bin/redis-server 127.0.0.1:6379
让redis跟随系统启动自动启动,使用命令如下:
chkconfig redis_6379 on
执行之后效果:
service redis_6379 does not support chkconfig
解决方法:
在redis_6379 配置文件中的#!/bin/sh
这一行的下方添加chkconfig的注释信息
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
添加完成之后,再使用chkconfig redis_6379 on
命令即可。