zoukankan      html  css  js  c++  java
  • Redis

    Redis在CentOS下开机自启

    创建脚本文件

    新建文件

    vim /etc/init.d/redis

    编写脚本

    #!/bin/sh
    # chkconfig: 2345 10 90  
    # description: Start and Stop redis   
    
    # 端口号
    REDISPORT=6379
    # redis-server路径
    EXEC=/usr/local/redis/redis-5.0.8/src/redis-server
    # redis-cli路径
    CLIEXEC=/usr/local/redis/redis-5.0.8/src/redis-cli
    # 进程号文件路径,启动之后才有
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    # redis.conf路径
    CONF="/usr/local/redis/redis-5.0.8/redis.conf"
    
    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
            exit 1
            ;;
        stop)
            if [ ! -f $PIDFILE ]
            then
                echo "$PIDFILE does not exist, process is not running"
            else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
            fi
            exit 1
            ;;
        restart)
            "$0" stop
            sleep 3
            "$0" start
            exit 1
            ;;
        *)
            echo "Please use start/stop/restart as first argument" >&2
            exit 1
            ;;
    esac

    其中以下部分需要根据安装路径自行修改

    # 端口号
    REDISPORT=6379
    # redis-server路径
    EXEC=/usr/local/redis/redis-5.0.8/src/redis-server
    # redis-cli路径
    CLIEXEC=/usr/local/redis/redis-5.0.8/src/redis-cli
    # 进程号文件路径,启动之后才有
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    # redis.conf路径
    CONF="/usr/local/redis/redis-5.0.8/redis.conf"

    配置脚本文件

    设置脚本文件为可执行

    chmod 777 /etc/init.d/redis

    将脚本文件增加到开机启动项中

    chkconfig --add /etc/init.d/redis
    
    chkconfig redis on

    密码问题

    用 requirepass 命令修改的密码,在重启redis之后密码会丢失。这里建议通过修改redis.conf文件中的以下属性来修改,把“foobared”修改成你想要的密码。

    注意:保存之前要把“#”号删掉,不然这就是个注释。

    # requirepass foobared

    设置密码之后,原始的脚本文件会报错,主要是stop脚本命令会报如下错误:

    (error) NOAUTH Authentication required.

    修改脚本文件如下

    把这一句
    $CLIEXEC -p $REDISPORT shutdown
    改成这一句
    $CLIEXEC -a "你的密码" shutdown

    原因就是执行shutdown命令是需要密码的。

  • 相关阅读:
    【力扣】11. 盛最多水的容器
    T-SQL 学习笔记 Chapter 6 子查询、表表达式 和排名函数 (一)
    忽然发现只是虚长了年岁,莫名的伤感。
    Gridview 多重表头 (二)
    那些 Cynthia 教我的事 之 PMSec (三)
    那些 Cynthia 教我的事 之 PMSec (二)
    那些 Cynthia 教我的事 之 PMSec (一)
    Gridview 多重表头 (一)
    项目总结之SSI (一)
    项目总结之MIT (一)
  • 原文地址:https://www.cnblogs.com/helios-fz/p/14708931.html
Copyright © 2011-2022 走看看