Linux下Redis开机自启(Centos)

本文介绍如何配置Redis以实现开机自启动,并解决配置密码后导致的关闭问题。通过修改配置文件和编写自启动脚本,确保Redis服务稳定运行。

原文地址:  https://www.cnblogs.com/silent2012/p/4157728.html


特别说明:

1.以下这些变量得配置成自己的。且 PIDFILE   应为 /var/run/redis_${REIDSPORT}.pid.不修改这里,stop的时候关不掉。

REDISPORT=6379  
EXEC=/usr/redisbin/redis-server   
REDIS_CLI=/usr/redisbin/redis-cli   
 
PIDFILE=/var/run/redis.pid   
CONF="/usr/redisbin/redis.conf"  
AUTH="1234"

2.我遇到的stop的时候,提示错误:(error) NOAUTH Authentication required.

该错误是因为配置文件里配置了密码,需要修改下面的文件。

$REDIS_CLI -p $REDISPORT  SHUTDOWN  改为 $REDIS_CLI -a "your password" -p $REDISPORT  SHUTDOWN

废话少说,直接来步骤:

1、设置redis.conf中daemonize为yes,确保守护进程开启。

2、编写开机自启动脚本

vi /etc/init.d/redis

脚本内容如下:


# chkconfig: 2345 10 90  
# description: Start and Stop redis   
  
PATH=/usr/local/bin:/sbin:/usr/bin:/bin   
REDISPORT=6379  
EXEC=/usr/redisbin/redis-server   
REDIS_CLI=/usr/redisbin/redis-cli   
 
PIDFILE=/var/run/redis.pid   
CONF="/usr/redisbin/redis.conf"  
AUTH="1234"  

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、写完后保存退出VI

4、设置权限

chmod 755 redis

5、启动测试

/etc/init.d/redis start

启动成功会提示如下信息:

Starting Redis server...
Redis is running...

使用redis-cli测试:

[root@rk ~]# /usr/redisbin/redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379> exit

6、设置开机自启动

chkconfig redis on

7、关机重启测试

reboot

然后在用redis-cli测试即可。


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值