1.第一種方式
建議安裝的時候用redis/utils/install_service.sh安裝,一路下一步默認就行,也可以自定義安裝位置。
2.第二種方式
是在redis安裝好之后,不再安裝redis,只是添加一個開機自啟動。
2.1.修改redis配置文件,redis/etc/redis.conf,把daemonize no改成daemonize yes。
2.2.創建啟動腳本
vim /etc/init.d/redis
#!/bin/sh #Configurations injected by install_server below.... EXEC=/usr/local/redis/bin/redis-server CLIEXEC=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis_6379.pid CONF="/etc/redis/6379.conf" REDISPORT="6379" ############### # SysV Init Information # chkconfig: - 58 74 # description: redis_6379 is the redis daemon. ### BEGIN INIT INFO # Provides: redis_6379 # Required-Start: $network $local_fs $remote_fs # Required-Stop: $network $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Should-Start: $syslog $named # Should-Stop: $syslog $named # Short-Description: start and stop redis_6379 # Description: Redis daemon ### END INIT INFO 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 ;; status) PID=$(cat $PIDFILE) if [ ! -x /proc/${PID} ] then echo 'Redis is not running' else echo "Redis is running ($PID)" fi ;; restart) $0 stop $0 start ;; *) echo "Please use start, stop, restart or status as first argument" ;; esac
這段代碼就是redis根目錄 /utils/redis_init_script 啟動腳本的代碼
我這邊是用了install_server.sh自動生成的,所以不用改那么多東西,直接用就行
2.3.啟動
chmod 775 /etc/init.d/redis #授權
systemctl daemon-reload #刷新配置
systemctl enable redis #設置開機自啟動
systemctl disable redis #關閉開機自啟動
systemctl start redis #啟動
service擴展:
格式:chkconfig <service> on 設置指定服務<service>開機時自動啟動。"chkconfig redis on" 格式:chkconfig <service> off 設置指定服務<service>開機時不自動啟動。"chkconfig redis off" 格式:ntsysv 以全屏幕文本界面設置服務開機時是否自動啟動。按Table鍵可以切換到OK和CANCEL