Redis註冊服務

來源:互聯網
上載者:User

之前安裝好了Redis服務之後,每次開啟與關閉都需要去redis目錄下去運行指令碼,相當的繁瑣,於是試著將redis的註冊成系統服務,如此便可以方便的對其進行各種操作,以下為具體的註冊服務配置:

將Redis做成一個服務 service

 

1.複製redis init指令碼到/etc/rc.d/init.d目錄

按以上步驟預設安裝Redis時,其服務指令碼位於:

/usr/software/redis/redis-3.0.1/utils/redis_init_script 

必須將其複製到/etc/rc.d/init.d的目錄下,同時易名為redis:

cp /usr/software/redis/redis-3.0.1/utils/redis_init_script   /etc/rc.d/init.d/redis 

 

 

2.將redis設定檔拷貝到/etc/redis/目錄下:

mkdir /etc/redis  

cp /usr/software/redis/redis-3.0.1 /redis.conf  /etc/redis/6379.conf 

這樣下面3中redis服務指令碼需要指定的CONF就存在了。預設情況下,Redis未啟用認證,可以通過開啟6379.conf的requirepass 指定一個驗證密碼。

 

 

3.更改redis的服務指令碼

vi  /etc/rc.d/init.d/redis

 

#!/bin/sh

#chkconfig: 2345 8090

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

# as it does use of the /proc filesystem.

 

REDISPORT=6379

EXEC=/usr/software/redis/redis-3.0.1/src/redis-server

CLIEXEC=/usr/software/redis/redis-3.0.1/src/redis-cli

 

PIDFILE=/var/run/redis.pid

CONF="/etc/redis/6379.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 ..."

                    sleep1

                done

                echo"Redis stopped"

        fi

        ;;

    *)

        echo "Pleaseuse start or stop as first argument"

        ;;

esac

 

註:以上紅色標準部分為修改的指令碼:

1)原檔案是沒有以下第2行的內容的,

引用#chkconfig: 2345 80 90

2)更改EXEC、CLIEXEC、PIDFILE、CONF參數,設定對應的目錄值,如上所示即和前面安裝的一致。

3)更改redis開啟的命令,以後台啟動並執行方式執行:

$EXEC $CONF & 

注意後面的那個“&”,即是將服務轉到後面啟動並執行意思,否則啟動服務時,Redis服務將

佔據在前台,佔用了主使用者介面,造成其它的命令執行不了。

 

 

 

 

4.更改redis的服務指令碼

以上操作完成後,即可註冊服務:

chkconfig --add redis  

$ service redis start 

Starting Redis server...

$ ps -ef | grep redis

root  1269   1  009:59 ?   00:00:00/usr/software/redis/redis-3.0.1/src/redis-server *:6379   

$ service redis stop 

Stopping ...

Redis stopped



1.1  命令配置

將Redis的命令所在目錄添加到系統參數PATH中 

1)修改profile檔案: 
$ vi /etc/profile 
在最後行添加: 

exportPATH="$PATH:/usr/software/redis/redis-3.0.1/src"

 

2)然後應用這個檔案: 

$ ./etc/profile 

 

3)這樣就可以直接調用redis-cli的命令了,如下所示: 

$ redis-cli

127.0.0.1:6379>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.