Redis開機自啓動腳本

Redis開機自啓動腳本

 

雖然使用命令行可以對redis進行各種操作,但啓動等,但是還是不太方便,此處介紹在Linux下安裝Redis後,如何設置其啓動自啓動。

1. CentOS6.x&RedHat6.x配置Redis引導自啓動

1.1創建Redis的管理腳本

首先,在系統的/etc/init.d/目錄下創建redis文件:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>vi /etc/init.d/redis
</code></span></span></span></span>

點擊i鍵,在腳本中添加如下內容:

 

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>#!<span style="color:#009926">/bin/</span>sh
# chkconfig: <span style="color:teal">2345</span> <span style="color:teal">10</span> <span style="color:teal">90</span> 
# description: Start and Stop redis
REDISPORT=<span style="color:teal">7379</span>
EXEC=<span style="color:#009926">/usr/</span>redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/src/redis-server
CLIEXEC=<span style="color:#009926">/usr/</span>redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/src/redis-cli
PIDFILE=<span style="color:#009926">/var/</span>run/redis_${REDISPORT}.pid
CONF=<span style="color:#dd1144">"/usr/redis/redis-5.0.4/redis.conf"</span>
<span style="color:teal">case</span> <span style="color:#dd1144">"$1"</span> <span style="color:teal">in</span>
  start)
    <span style="color:teal">if</span> [ -f $PIDFILE ]
    then
        echo <span style="color:#dd1144">"$PIDFILE exists, process is already running or crashed"</span>
    <span style="color:teal">else</span>
        echo <span style="color:#dd1144">"Starting Redis server..."</span>
        $EXEC $CONF &
    fi
    ;;
  stop)
    <span style="color:teal">if</span> [ ! -f $PIDFILE ]
    then
        echo <span style="color:#dd1144">"$PIDFILE does not exist, process is not running"</span>
    <span style="color:teal">else</span>
        PID=$(cat $PIDFILE)
        echo <span style="color:#dd1144">"Stopping ..."</span>
        $CLIEXEC -p $REDISPORT shutdown
        <span style="color:teal">while</span> [ -x /proc/${PID} ]
        <span style="color:teal">do</span>
          echo <span style="color:#dd1144">"Waiting for Redis to shutdown ..."</span>
          sleep <span style="color:teal">1</span>
        done
        echo <span style="color:#dd1144">"Redis stopped"</span>
    fi
    ;;
  restart)
    <span style="color:#dd1144">"$0"</span> stop
    sleep <span style="color:teal">3</span>
    <span style="color:#dd1144">"$0"</span> start
    ;;
  *)
    echo <span style="color:#dd1144">"Please use start or stop or restart as first argument"</span>
    ;;
esac</code></span></span></span></span>
顯示代碼
 

注意,對於自定義編譯安裝的Redis(幫助文檔中提供的即是一種方式),需要根據安裝路徑修改腳本中這幾項配置:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>EDISPORT=<span style="color:teal">7379</span> ====>默認爲<span style="color:teal">7379</span>,若有調整請修改爲實際的端口號
EXEC=<span style="color:#009926">/usr/</span>redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/src/redis-server ====>Redis 服務的啓動路徑
CLIEXEC=<span style="color:#009926">/usr/</span>redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/src/redis-cli ====>Redis 客戶端的啓動路徑
CONF=<span style="color:#dd1144">"/usr/redis/redis-5.0.4/redis.conf"</span> ====>配置文件路徑</code></span></span></span></span>

保存腳本文件後設置文件的執行權限:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>chmod a+x /etc/init.d/redis
</code></span></span></span></span>

然後,就可以通過該腳本對Redis服務進行管理了:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>/etc/init.d/redis start
/etc/init.d/redis stop
</code></span></span></span></span>

1.2使用chkconfig設置啓動自啓動

上面的步驟完成了用腳本管理Redis服務的功能,接下來我們就可以使用chkconfig來設置Redis開機啓動了。

先將Redis服務加入chkconfig管理列表:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>chkconfig --add /etc/init.d/redis
</code></span></span></span></span>

配置完以後,就可以使用以下命令設置開機自啓動等操作了:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>chkconfig redis on     #設置開機自啓動
chkconfig redis off    #停止開機自啓動
service redis start    #啓動redis服務
service redis stop     #停止redis服務
service redis restart  #重啓redis服務
</code></span></span></span></span>

2. CentOS7.x&RedHat7.x配置redis開機自啓動

2.1創建Redis的管理腳本

首先,在系統的/ lib / systemd / system /目錄下創建redis.service文件:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>vi /lib/systemd/system/redis.service
</code></span></span></span></span>

點擊i鍵,在腳本中添加如下內容:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>[Unit]
Description=The redis-server Process Manager
After=syslog.target network.target
[Service]
Type=forking
PIDFile=<span style="color:#009926">/var/</span>run/redis_7379.pid
ExecStart=<span style="color:#009926">/usr/</span>redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/src/redis-server /usr/redis/redis-<span style="color:teal">5.0</span><span style="color:teal">.4</span>/redis.conf
ExecReload=<span style="color:#009926">/bin/</span>kill -USR2 $MAINPID
ExecStop=<span style="color:#009926">/bin/</span>kill -SIGINT $MAINPID 
[Install]
WantedBy=multi-user.target</code></span></span></span></span>

注意,對於自定義編譯安裝的Redis(幫助文檔中提供的即是一種方式),需要根據實際路徑修改腳本中的Redis啓動路徑“ / usr / redis / sbin / redis”。

保存腳本文件後設置文件的執行權限:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>chmod a+x /lib/systemd/system/redis.service
</code></span></span></span></span>

2.2使用systemctl設置開機自啓動

配置完腳本以後,就可以使用以下命令設置開機自啓動等操作了:

<span style="color:#000000"><span style="color:#334356"><span style="color:#334356"><span style="color:#1bc1a1"><img class="clippy" alt="複製到剪貼板" src="https://help.finereport.com/js/clipboard/clippy.png" data-cke-saved-src="https://help.finereport.com/js/clipboard/clippy.png" /><code>systemctl enable redis.service          #設置開機自啓動
systemctl disable redis.service         #停止開機自啓動
systemctl start redis.service          #啓動 Redis 服務
systemctl stop redis.service           #停止服務
systemctl status redis.service          #查看服務當前狀態
systemctl list-units --type=service     #查看所有已啓動的服務</code></span></span></span></span>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章