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命令是需要密码的。

  • 相关阅读:
    CMake命令笔记
    在Win10上,Android Studio检测不到设备的解决方案
    在MFC中使用大漠插件
    Win10更新后,IE和Edge以外的浏览器打开网页速度慢的解决方案
    jsp的自定义标签
    js和JQuery区别
    POI (Apache POI)
    TCP程序设计基础
    传参在mybatis的sql映射文件中正确获取
    I/O(输入/输出)
  • 原文地址:https://www.cnblogs.com/helios-fz/p/14708931.html
Copyright © 2011-2022 走看看