注意: 本文进行演示的系统为 Linux 的发行版 — CentOS 7,关于 CentOS 7 的信息,请参考:
Linux学习总结(29)——CentOS 6和CentOS 7区别总结
CentOS 7 下载:
https://www.centos.org/download/
下边开始进入正题:
3.Linux 平台将 Redis 设置为服务并开机自启动
3.1 安装 Redis
在 Redis 解压目录下执行命令进行安装: make install
(安装命令实际上是将 Redis 的一些操作程序复制到 /usr/bin/
目录下,/usr/bin/
目录包含在 PATH
中,这样就可以直接全局操作 Redis,而不需要每次跳转到 Redis 解压目录来执行 Redis 的操作命令)
3.2 修改 Redis 启动脚本
Redis 启动脚本为 Redis 解压目录的 utils
目录下名为 redis_init_script
使用 vim 打开 Redis 启动脚本 vim ./utils/redis_init_script
修改 redis_init_script
脚本
需要修改的部分为:
- 3.2.1 在脚本的第二行添加
# chkconfig 2345 90 10
- 3.2.2 Redis 服务端口,这里要以 Redis 的配置文件(redis.conf)中的端口为准
REDISPORT=6397
- 3.2.3 Redis 的操作程序,如果执行了步骤3.1,则 Redis 的操作程序默认安装在
/usr/local/bin/
目录下,这里就不需要做修改,如果安装位置有所调整,则以实际安装位置为准
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
- 3.2.4 Redis 配置文件
CONF="/etc/redis/${REDISPORT}.conf"
这是指定 Redis 服务启动的配置文件,该目录以文件本身不存在,需要自行创建,该操作放在下一步
修改后的启动脚本文件(前边部分,后边的不变)
#!/bin/sh
# chkconfig: 2345 90 10
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6397
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
3.3 复制配置文件以及脚本
- 3.3.1 复制配置文件
创建目录:mkdir /etc/redis
复制配置文件(在 Redis 解压目录下):cp redis.conf /etc/redis/6397.conf
(创建的文件名要与设置的端口名一致) - 3.3.2 复制脚本至启动目录
(命令在 Redis 解压目录下执行)cp ./utils/redis_init_script /etc/init.d/redisd
3.4 设置开机启动以及对 Redis 服务的操作
- 3.4.1 设置开机启动
chkconfig redisd on
- 3.4.2 开启 Redis 服务
service redisd start
- 3.4.2 关闭 Redis 服务
redis-cli -p 6397 -a demo@Q shutdown
(由于这里已经对 Redis 设置了密码,因此不能简单地执行service redisd stop
进行关闭 Redis 服务)
使用 service redisd stop
命令进行关闭,抛出异常
正确的关闭 Redis 的操作命令 redis-cli -p 6397 -a demo@Q shutdown
重启之后, Redis 服务已经开机自启
到这里, Linux 平台下将 Redis 设置为服务并开机自动启动的操作配置已经完成