美文网首页我爱编程
Redis探索之旅(5)- 在Linux下将Redis注册成服

Redis探索之旅(5)- 在Linux下将Redis注册成服

作者: dagailv | 来源:发表于2017-06-02 07:33 被阅读0次

    在《Redis探索之旅(3)- 在Windows下将Redis注册成本地服务》我们讲述了如何在Windows下的操作方法,在这篇文章中,我们看看在Linux下如何操作。

    我们按照下面的步骤一步一步来。

    (1)将Redis目录下的初始化脚本拷贝到/etc/rc.d/init.d目录;

    redis的初始化脚本目录为:/usr/local/src/redis/utils/redis_init_script

    将这个目录拷贝到目标目录,同时将文件夹名称进行修改:

    [javascript]view plaincopy

    cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis

    然后添加注册服务,如下所示:

    [javascript]view plaincopy

    chkconfig --add redis

    执行后,可能你会遇到下面的错误:

    [javascript]view plaincopy

    redis服务不支持chkconfig

    因此,我们还需要对初始化脚本做一些修改。

    (2)修改脚本

    我们首先打开redis脚本,修改后内容如下:

    [javascript]view plaincopy

    #!/bin/sh

    #chkconfig: 2345 80 90

    # Simple Redis init.d script conceived to work on Linux systems

    # as it does use of the /proc filesystem.

    REDISPORT=6379

    EXEC=/usr/local/redis/bin/redis-server

    CLIEXEC=/usr/local/redis/bin/redis-cli

    PIDFILE=/var/run/redis_${REDISPORT}.pid

    CONF="/etc/redis/${REDISPORT}.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

    ;;

    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

    ;;

    *)

    echo"Please use start or stop as first argument"

    ;;

    esac

    脚本的修改地方主要涉及以下几个地方:

    (a)第二行增加如下内容

    [javascript]view plaincopy

    #chkconfig: 2345 80 90

    (b)原脚本EXEC和CLIEXEC的值因为目录不同而有所修改

    [javascript]view plaincopy

    EXEC=/usr/local/redis/bin/redis-server

    CLIEXEC=/usr/local/redis/bin/redis-cli

    (c)redis启动的命令改为以后台方式启动

    [javascript]view plaincopy

    $EXEC $CONF &

    (d)将redis配置文件拷贝到/etc/redis/端口ID.conf,如下所示:

    [javascript]view plaincopy

    mkdir /etc/redis

    cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf

    默认情况下,redis启动时不启用鉴权认证,如果有需要,可以在配置文件中进行设置requirepass参数。

    通过上面的脚本修改后,我们可以再次使用下面的命令进行注册服务:

    [javascript]view plaincopy

    chkconfig --add redis

    注册成功后,然后就是启动服务了,如下所示:

    [javascript]view plaincopy

    service redis start

    至此,单实例redis服务便启动起来了。

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。互联网+时代,时刻要保持学习,携手千锋PHP,Dream It Possible。

    相关文章

      网友评论

        本文标题: Redis探索之旅(5)- 在Linux下将Redis注册成服

        本文链接:https://www.haomeiwen.com/subject/ncmyfxtx.html