前面的文章讲了Redis和Redis Stack的安装,随着服务器的重启,导致Redis 客户端无法连接。原来的是Redis没有配置开机自启。此文记录一下如何配置开机自启。
1、修改配置文件
前面的Redis和Redis Stack的安装的文章中已经讲了redis.config
的配置,这里在说明一下开启自启必须得配置。
daemonize 默认为
no
,表示不以守护进程的方式运行(不会后台启动,关闭窗口服务自动关闭)所以这里我们一般都会改成
yes
,这样的话不管事开启自启还是测试都是比较方便的
################################# GENERAL #####################################
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# When Redis is supervised by upstart or systemd, this parameter has no impact.
daemonize yes
# Creating a pid file is best effort: if Redis is not able to create it
# nothing bad happens, the server will start and run normally.
#
# Note that on modern Linux systems "/run/redis.pid" is more conforming
# and should be used instead.
pidfile /var/run/redis_6379.pid
2、修改启动脚本
Redis安装包下已经包含了启动的脚本。
由于
redis-7.4.2
是笔者自己的解压的数据包,使用者可以按照自己的位置去找。
/opt/redis-7.4.2/utils/redis_init_script
将文件拷贝到/etc/init.d
下。这里存放的都是自启服务的命令。
# 文件拷贝到/etc/init.d/并命名为redisd,名字可以随便取
cp opt/redis-7.4.2/utils/redis_init_script /etc/init.d/并命名为redisd,名字可以随便取redisd
然后修改redisd文件,主要修改以下这5处:
# 指定自己的端口
REDISPORT=6379
# 指定服务启动的路径,笔者安装在 /usr/loca/redis/bin/redis-server,替换成自己的安装目录即可
# EXEC=/usr/local/bin/redis-server
# CLIEXEC=/usr/local/bin/redis-cli
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
# redis.conf中配置的pidfile
PIDFILE=/var/run/redis_${REDISPORT}.pid
# 指定启动的配置文件
# CONF="/etc/redis/${REDISPORT}.conf"
CONF="/usr/local/redis/conf/redis.conf"
3、设置可执行脚本
chmod 755 /etc/init.d/redisd
4、启动redis
/etc/init.d/redisd start
5、设置开机自启
cd /etc/init.d/redisd
# 设置开启自启
chkconfig redisd on
6、启动测试
# 重启服务器,然后看看客户端会不会连上
reboot