Redis探索之旅(5)- 在Linux下將Redis注冊成服務(wù)

在《Redis探索之旅(3)- 在Windows下將Redis注冊成本地服務(wù)》我們講述了如何在Windows下的操作方法,在這篇文章中,我們看看在Linux下如何操作。

我們按照下面的步驟一步一步來。

(1)將Redis目錄下的初始化腳本拷貝到/etc/rc.d/init.d目錄;

redis的初始化腳本目錄為:/usr/local/src/redis/utils/redis_init_script

將這個目錄拷貝到目標(biāo)目錄,同時將文件夾名稱進(jìn)行修改:

[javascript]view plaincopy

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

然后添加注冊服務(wù),如下所示:

[javascript]view plaincopy

chkconfig?--add?redis

執(zhí)行后,可能你會遇到下面的錯誤:

[javascript]view plaincopy

redis服務(wù)不支持chkconfig

因此,我們還需要對初始化腳本做一些修改。

(2)修改腳本

我們首先打開redis腳本,修改后內(nèi)容如下:

[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)第二行增加如下內(nèi)容

[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

默認(rèn)情況下,redis啟動時不啟用鑒權(quán)認(rèn)證,如果有需要,可以在配置文件中進(jìn)行設(shè)置requirepass參數(shù)。

通過上面的腳本修改后,我們可以再次使用下面的命令進(jìn)行注冊服務(wù):

[javascript]view plaincopy

chkconfig?--add?redis

注冊成功后,然后就是啟動服務(wù)了,如下所示:

[javascript]view plaincopy

service?redis?start

至此,單實例redis服務(wù)便啟動起來了。

著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。互聯(lián)網(wǎng)+時代,時刻要保持學(xué)習(xí),攜手千鋒PHP,Dream It Possible。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 1.下載redis 先下載redis-2.8.19.tar.gz到本地,然后使用scp命令復(fù)制到服務(wù)器的/usr/...
    NoException閱讀 472評論 0 1
  • 摘要: Redis官網(wǎng):http://redis.io 獨立緩存服務(wù)器:IP:xxx.xxx.xxx.xxx 安裝...
    ITsupuerlady閱讀 303評論 0 1
  • 作者/蘇波 講起馬拉松賽跑,不少人往往只知道它是一項有趣的體育競賽活動,其實馬拉松賽跑是人類最原始的軍事通信形式之...
    紫青藤閱讀 444評論 0 0
  • 【目錄】【上一章】【下一章】 什么叫做恐懼? 恐懼就是人對未來的無知! 這個無知,并不是說人傻。而是對未來要發(fā)生的...
    半朽閱讀 435評論 1 14