【redis】设置redis开机自启动

本文详细介绍了如何将Redis配置为守护进程并设置开机自启动。首先,修改redis.conf文件,将daemonize配置改为yes以启动守护进程。接着,创建了一个位于/etc/init.d/的redis启动脚本,用于管理Redis的启动、停止和重启操作。脚本中包含了启动和关闭的逻辑,以及配置文件和PID文件的位置。然后,通过chmod和chkconfig命令赋予脚本执行权限并设置开机启动。最后,测试启动和停止Redis服务,确认其正常工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.将redis.conf文件中 daemonize 配置由no改为 yes

################################# GENERAL #####################################
# 开启redis的守护进程,开启后会生成一个 /var/run/redis.pid文件
daemonize yes

2.创建开机自启动脚本

#在/etc/init.d路径下创建redis文件,脚本内容如下
[root@master ~]# vi /etc/init.d/redis

# chkconfig: 2345 10 90 
#redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
# description: Start and Stop redis  
 
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
export PATH 
REDISPORT=6379 #端口号,这是默认的,如果你安装的时候不是默认端口号,则需要修改
EXEC=/usr/local/redis-5.0.7/bin/redis-server #redis-server启动脚本的位置,你如果忘了可以用find或whereis找到  
REDIS_CLI=/usr/local/redis-5.0.7/bin/redis-cli #redis-cli客户端启动脚本的位置,你如果忘了可以用find或whereis找到  
 
PIDFILE=/run/redis_6379.pid  # redis启动后,这个文件一般在/run路径下
CONF="/usr/local/redis-5.0.7/etc/redis.conf" #redis.conf配置文件的位置,你如果忘了可以用find或whereis找到
AUTH="123456"
 
case "$1" in 
    start)  
        if [ -f $PIDFILE ]  
        then 
            echo "$PIDFILE exists, process is already running or crashed."
        else
            echo "Starting Redis server..."
            $EXEC $CONF  
        fi 
        if [ "$?"="0" ]  
        then 
            echo "Redis is running..."
        fi 
        ;;  
    stop)  
        if [ ! -f $PIDFILE ]  
        then 
            echo "$PIDFILE exists, process is not running."
        else
            PID=$(cat $PIDFILE)  
            echo "Stopping..."
            $REDIS_CLI -p $REDISPORT SHUTDOWN  
            sleep 2 
            while [ -x $PIDFILE ]  
            do
                echo "Waiting for Redis to shutdown..."
                sleep 1 
            done 
            echo "Redis stopped"
        fi 
        ;;  
    restart|force-reload)  
        ${0} stop  
        ${0} start  
        ;;  
    *)  
        echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 
        exit 1 
esac

3.修改redis脚本权限,设置redis脚本文件

[root@master init.d]# chmod 755 redis
#设定redis在各等级为on,“各等级”包括2、3、4、5等级
[root@master init.d]# chkconfig redis on
#启动测试
[root@master init.d]# /etc/init.d/redis start
Starting Redis server...
989:C 04 Mar 2020 16:13:39.423 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
989:C 04 Mar 2020 16:13:39.423 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=989, just started
989:C 04 Mar 2020 16:13:39.423 # Configuration loaded
Redis is running...
#查看redis启动信息
[root@master ~]# ps -ef |grep redis
root       1302      1  0 13:49 ?        00:00:09 ./redis-server 192.168.225.100:6379
root       1578   1417  0 15:40 pts/1    00:00:00 grep --color=auto redis
#杀死redis进程,kill -9 进程号
[root@master ~]# kill -9 1302
[root@master ~]# ps -ef |grep redis
root       1580   1417  0 15:40 pts/1    00:00:00 grep --color=auto redis

4.重启及验证

[root@master ~]# reboot
### 配置 Redis 开机自启动 #### Linux 系统中的配置方法 对于Linux系统,可以利用系统的初始化工具来确保Redis随操作系统一同启动。通常情况下,在现代Linux发行版中会使用`systemd`作为初始化管理器。 为了使Redis能够在Linux上开机自动启动,需要创建或启用一个`systemd`服务单元文件[^1]: ```bash sudo systemctl enable redis.service ``` 这行命令将会链接默认的Redis服务文件至对应的启动目标路径下,从而实现在每次机器重启时自动加载并运行Redis服务器进程。 #### Windows 平台下的操作方式 针对Windows环境,则需借助于内置的服务控制机制来进行相应设定。具体做法是在命令提示符环境下切换到Redis安装位置之后输入如下指令完成注册过程[^3]: ```batchfile redis-server.exe --service-install redis.windows.conf --loglevel verbose ``` 上述语句的作用在于把当前实例转化为一项持久化的后台作业,并指定其行为依据所给定的配置文档而定;同时开启详细的日志记录模式以便日后排查可能出现的问题。 #### macOS 上的操作指导 macOS 用户如果采用Homebrew包管理器部署了Redis的话,那么只需要简单地执行一条特定语法就能达成目的[^5]: ```bash brew services start redis ``` 这条简单的Shell脚本不仅能够立即激活该数据库引擎使之处于监听状态准备接收连接请求外,还额外设置了每当计算机重新引导之时都会重复同样的动作——即让Redis成为守护程序的一部分持续工作着直到人为干预停止为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猿架构

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值