1、通过wget下载最新的redis压缩包或者将已有的包上传至linux服务器上。存放目录:/usr/local/src
2、解压缩安装包、重命名解压后的目录名称
--进入到压缩包所在目录
cd /usr/local/src
--解压缩
tar -zxvf redis-3.2.8.tar.gz
--重命名(目录名称redis3)
mv redis-3.2.8 redis3
--进入到redis3目录中
cd redis3
3、编译和安装redis
--安装依赖(可选)
yum -y install gcc tcl gcc-c++
--清除之前编译安装产生的文件(可选)
make distclean
--创建安装目录
mkdir /usr/local/redis_master
--编译和安装(安装到指定目录,参数PREFIX必须为大写)
make PREFIX=/usr/local/redis_master install
--查看安装后的目录结构
注意事项,安装失败,请检查是否安装依赖:yum install gcc tcl
4、redis服务化启动
--拷贝启动脚本
cp /usr/local/src/redis3/utils/redis_init_script /etc/rc.d/redis
或者
cp /usr/local/src/redis3/utils/redis_init_script /etc/rc.d/init.d/redis
根据自己系统情况而定!
--编辑启动脚本,并且修改如下项目
(1)在脚本的第一行后面添加一行内容如下:
#chkconfig: 2345 80 90
(如果不添加上面的内容,在注册服务时会提示:service redis does not support chkconfig)
(2)REDISPORT端口保持6379不变;(注意,端口名将与下面的配置文件名有关)
(3)EXEC=/usr/local/bin/redis-server改为EXEC=/usr/local/redis_master/bin/redis-server
(4)CLIEXEC=/usr/local/bin/redis-cli改为CLIEXEC=/usr/local/redis_master/bin/redis-cli
(5)CONF="/etc/redis/${REDISPORT}.conf"改为CONF="/usr/local/redis_master/conf/${REDISPORT}.conf"
(6)$EXEC $CONF 改为 $EXEC $CONF &,即后台运行进程
完整配置如下图:
5、redis启动配置文件
--创建存储配置文件的目录
mkdir /usr/local/redis_master/conf
--复制并且重命名配置文件
cp /usr/local/src/redis3/redis.conf /usr/local/redis_master/conf/6379.conf
--修改配置文件
vi /usr/local/redis_master/conf/6379.conf
(1)daemonize no 改为>daemonize yes,后台运行程序,不显示启动界面
(2)确保pidfile /var/run/redis_6379.pid,与启动脚本中的pid文件全路径一致
(3)logfile "/usr/local/redis_master/logs/redis.log",日志文件绝对路径
(4)maxmemory 3GB,配置最大内存,建议最大为物理内存的一半
6、其他事项
--增加新的服务,并且开机自启动
chkconfig --add redis
chkconfig redis on
--开启防火墙白名单
vi /etc/sysconfig/iptables
增加配置:-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
--重启防火墙
service iptables restart
--将redis相关命令追加到环境变量中
vi /etc/profile
在最后添加以下内容:
##Redis_ENV
export PATH=$PATH:/usr/local/redis_master/bin
使配置生效:
# source /etc/profile
7、使用命令执行脚本,启用或关闭服务
service redis start|stop
8、redis配置文件注意事项
(1)、6379.conf配置bind选项,需要配置服务器的具体IP,否则应用程序可能连接被拒绝
bind 10.0.0.100 127.0.0.1 ::1
如果测试环境想允许所有IP访问可配置为:bind 0.0.0.0
(2)、配置了认证权限
requirepass 123456
需要修改启动脚本的stop命令为:$CLIEXEC -p $REDISPORT -a 123456 shutdown
(3)、启动脚本[$EXEC $CONF &]与配置文件[daemonize yes]区别
a、脚本中&表示后台运行进程
b、配置文件yes表示不显示启动界面,如果值为yes,脚本中是否增加&都没啥影响;如果值为no,会显示启动界面,脚本中有&的,启动服务后,摁Ctrl+C服务不会停止,否则服务停止