概述
裝了redis有一段時(shí)間了,每次運(yùn)行的時(shí)候都需要手動(dòng)在命令行里啟動(dòng)redis,而且窗口不能關(guān)閉,感覺很麻煩,所以就想把redis設(shè)置為開機(jī)啟動(dòng)。由于google打不開(偉大的GFW啊),所以百度了幾篇文章,照著教程一步一步做還是沒有成功,怪自己太笨了。
這兩天自己搭建了一個(gè)VPN,又能用google了,所以把這個(gè)問題解決了下,現(xiàn)在redis終于能開機(jī)啟動(dòng)了,High一下。
要設(shè)置redis開機(jī)啟動(dòng),這里我使用的是mac的launchd系統(tǒng),將redis作為用戶守護(hù)(User Daemon)進(jìn)程運(yùn)行在后臺。簡單來說,用戶守護(hù)進(jìn)程是作為系統(tǒng)的一部分運(yùn)行在后臺的非圖形化程序。用戶守護(hù)進(jìn)程是不和用戶賬戶關(guān)聯(lián)的。如果僅僅想對某個(gè)特定的用戶設(shè)置redis開機(jī)啟動(dòng),那就需要使用用戶代理(User Agent)了(這個(gè)我也不會(huì),大家自己探索吧,到時(shí)候別忘了告訴我下)。
具體步驟
創(chuàng)建一個(gè)plist文件
首先我們需要在/Library/LaunchDaemons目錄下創(chuàng)建一個(gè)plist文件,使用如下命令:
復(fù)制代碼代碼如下:
sudo vim /Library/LaunchDaemons/io.redis.redis-server.plist
將下面的內(nèi)容粘貼到上一條命令創(chuàng)建的文件里
復(fù)制代碼代碼如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>io.redis.redis-server</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/redis-server</string>
<string>/usr/local/etc/redis.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
粘貼完以后,我們需要對上面的內(nèi)容做兩處修改:一個(gè)是“redis-server”的路徑,這里需要改為你自己的安裝路徑(可以使用”which redis-server”命令來查看具體的路徑)。還有一個(gè)就是redis配置文件的路徑,這個(gè)是可選的,如果沒有使用配置文件那么就把第二個(gè)刪除,如果使用了配置文件,一定要改為正確的路徑。
將plist文件載入到launchd
編輯完plist文件以后,我們需要將該文件載入到launchd里,使用launchctl命令,具體命令如下:
復(fù)制代碼代碼如下:
sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist
重啟以后,redis就可以開機(jī)啟動(dòng)了。如果不想重新啟動(dòng),也可以使用如下命令:
復(fù)制代碼代碼如下:
sudo launchctl start io.redis.redis-server
關(guān)閉redis
如果想關(guān)閉redis的話,使用如下命令:
復(fù)制代碼代碼如下:
sudo launchctl stop io.redis.redis-server
設(shè)置別名
為了使用方便,我們可以給redis的開啟和關(guān)閉命令設(shè)置別名:
復(fù)制代碼代碼如下:
alias redisstart='sudo launchctl start io.redis.redis-server'
alias redisstop='sudo launchctl stop io.redis.redis-server'
總結(jié)
廢了點(diǎn)功夫,終于能讓redis開機(jī)啟動(dòng)了,^_^。大家如果遇到什么錯(cuò)誤,可以到控制臺看下redis的日志。