今天周一,一大早來公司開完會,就聽到開發的同學說本地專案起不來了,叫我查下原因。想了下,他們本地專案只跟我們公司的一台內網伺服器有關,那台伺服器他們要用到的呢,也就只有mysql和redis這兩個服務,於是就去查了下這兩個服務的狀態。mysql是啟動狀態的,redis是關閉的,想起來了,週末園區說會全體斷電一次,好像是要搞什麼演練,想必這肯定是這台伺服器斷電關機了,而redis沒有設定開機自啟動(mysql之前設定過,而redis當時忘記了。。。。。),於是就先把問題先解決吧,然後寫個指令碼設定redis開機自啟動。
1、在寫指令碼前設定下redis允許在後台啟動,修改redis.conf檔案,把daemonize no改成daemonize yes
2、開始編寫指令碼
#vim /etc/init.d/redis --建立指令碼檔案
這裡我的redis安裝路徑是/usr/local/src/redis-3.0.3,埠為8530,然後redis.conf檔案在/etc下面,你們根據自己的實際情況修改就行(這個指令碼可以根據redis自帶的啟動指令碼進行修改,它預設的路徑是在$redis/utils/redis_init_script,$redis是redis的安裝路徑)
#!/bin/bash3、寫完記得修改檔案許可權#chkconfig:
22345
1090
#description: start and stop redis
redisport=8530
exec=/usr/local/src/redis-3.0.3/src/redis-server
cliexec=/usr/local/src/redis-3.0.3/src/redis-cli
pidfile=/var/run/redis.pid
conf="
/etc/redis.conf
"case"$1
"instart)
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/$ ]
doecho
"waiting for redis to shutdown...
"sleep
1done
echo
"redis stopped"fi
;; restart)
"$0"stop
sleep3"
$0"start
;;*)
echo
"please use start or stop or restart as first argument";;
esac
#chmod +x /etc/init.d/redis
4、把指令碼新增到系統服務列表
#chkconfig --add redis#chkconfig redis on
#chkconfig --list //檢視所有註冊的指令碼檔案
redis設定開機自啟動
1 拷貝 redis 安裝目前下的 usr local redis 4.0.8 utils redis init script 到 etc init.d redis檔案中 cp usr local redis 4.0.8 utils redis init script etc init.d redi...
Redis設定為開機自啟動
vim etc init.d redis bin sh chkconfig 2345 90 10 description redis is a persistent key value database path usr local bin sbin usr bin bin redisport 63...
redis開機自啟動
一.啟動redis 1.redis server 這種方式啟動,當按ctrl c退出時會關閉啟動 2.redis server 加上 號使redis以後台程式方式執行 二.檢測redis程序後台是否存在的三種方法 1.ps ef grep redis 檢視redis程序 2.netstat lntp...