在生產環境中,啓動redis服務,不是直接使用redis/bin 目錄下的./redis-server start,而是通過service或systemctl這兩種方式來管理的。下面是通過service來管理的形式:
要把redis作爲一個系統的daemon進程去運行的,每次系統啓動,redis進程一起啓動
(1)redis utils目錄下,有個redis_init_script腳本
(2)將redis_init_script腳本拷貝到linux的/etc/init.d目錄中,將redis_init_script重命名爲redis_6379,6379是我們希望這個redis實例監聽的端口號
(3)修改redis_6379腳本的第6行的REDISPORT,設置爲相同的端口號(默認就是6379)
(4)創建兩個目錄:/etc/redis(存放redis的配置文件),/var/redis/6379(存放redis的持久化文件)
(5)修改redis配置文件(默認在redis的bin目錄下,redis.conf),拷貝到/etc/redis目錄中,修改名稱爲6379.conf
(6)修改redis.conf中的部分配置爲生產環境
daemonize yes 讓redis以daemon進程運行
pidfile /var/run/redis_6379.pid 設置redis的pid文件位置
port 6379 設置redis的監聽端口號
dir /var/redis/6379 設置持久化文件的存儲位置
(7)啓動redis之前需要執行 cd /etc/init.d, chmod 777 redis_6379,將redis設置成最大權限
啓動redis的命令 ./redis_6379 start 關閉redis的命令:./redis_6379 stop
(8)確認redis進程是否啓動,ps -ef | grep redis
(9)讓redis跟隨系統啓動自動啓動
在redis_6379腳本中,最上面,加入兩行註釋
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
輸入命令 chkconfig redis_6379 on,它會自動forward到 systemctl enable redis_6379.service ,但是還是沒有開機自啓的權限,或許是redis的用戶和組的問題,還沒有解決,如果有解決的方法,歡迎在下方評論!