參考5.0安裝,位址:https://my.oschina.net/u/3367404/blog/2979102
前言
安裝Redis需要知道自己需要哪個版本,有針對性的安裝。
比如如果需要redis GEO這個地理集合的特性,那麼redis版本就不能低于3.2版本,由于這個特性是3.2版本才有的。
另外需要注意的是,Redis約定次版本号(即第一個小數點後的數字)為偶數的版本是穩定版(如2.8版、3.0版),奇數版本是非穩定版(如2.7版、2.9版),生産環境下一般需要使用穩定版本。
安裝Redis官方是這麼描述的:Download, extract and compile Redis with:
即:下載下傳,解壓,并且編譯。
是以文檔隻做實驗嘗鮮,故安裝官方最新版本redis5.0.5
步驟:
1.下載下傳安裝包
[root@CentOS7 opt]# pwd #檢視目前目錄,源碼包下載下傳在此目錄下
/opt
[root@CentOS7 opt]# wget http://download.redis.io/releases/redis-5.0.5.tar.gz
2.解壓源碼包
[root@CentOS7 opt]# tar -zxvf redis-5.0.5.tar.gz #解壓會生成一個redis-5.0.5的目錄
3.安裝GCC依賴
[root@CentOS7 opt]# yum install gcc gcc-c++ #遇到選擇,直接輸入y即可
4.編譯&安裝
[root@CentOS7 opt]# cd redis-5.0.5/ #進入到redis目錄
[root@CentOS7 redis-5.0.5]# make #等待編譯完成即可,未報錯即進行下一步
[root@CentOS7 redis-5.0.5]# make install #安裝,執行make install的時候會将src下面的幾個指令複制到/usr/local/bin/下
5.運作redis
[root@CentOS7 ~]# /opt/redis-5.0.5/src/redis-server #在redis目錄下運作
[root@CentOS7 ~]# redis-server #在任意目錄下運作,因為redis-server指令在/usr/local/bin目錄裡面,而該目錄又配置在PATH中,是以你可以像執行ls、mkdir等指令的方式去執行redis-cli或者redis-server等指令。
安裝後操作
以背景程序方式啟動redis
第一步:修改redis.conf檔案,redis.conf檔案就在redis目錄下
① 配置允許所有ip都可以通路redis,在bind 127.0.0.1前加“#”将其注釋掉
② 預設為保護模式,把 protected-mode yes 改為 protected-mode no
③ 預設為不守護程序模式,把daemonize no 改為daemonize yes
④ 将 requirepass foobared前的“#”去掉,密碼改為你想要設定的密碼(練習設定為123456,即将foobared改為123456)
第二步:指定redis.conf檔案啟動
[root@CentOS7 redis-5.0.5]# redis-server /opt/redis-5.0.5/redis.conf
第三步:關閉redis程序
[root@CentOS7 redis-5.0.5]# ps -ef |grep redis #ps -aux | grep redis檢視redis程序
root 17311 1 0 15:23 ? 00:00:00 redis-server 127.0.0.1:6379
[root@CentOS7 redis-5.0.5]# kill -9 17311 #kill掉redis程序
第四步:檢查是否開啟了所有Ip通路:
[root@CentOS7 redis-5.0.5]# netstat -lunpt
如果端口号前面顯示的是*或者0.0.0.0則說明用戶端可以通路了,如果是127.0.0.1,表示隻能本機通路,配置檔案中沒将其注釋掉
設定redis開機自啟動
1.在/etc目錄下建立redis目錄
[root@CentOS7 redis-5.0.5]# mkdir -pv /etc/redis
2.将配置檔案複制進/etc/redis/下,并命名為6379.conf
[root@CentOS7 redis]# cp /opt/redis-5.0.5/redis.conf /etc/redis/6379.conf
3.建立服務
用service來管理服務的時候,是在/etc/init.d/目錄中建立一個腳本檔案,來管理服務的啟動和停止.
在systemctl中,也類似,檔案目錄有所不同,在/etc/systemd/system目錄下建立一個腳本檔案redis.service,裡面的内容如下:
[Unit]
Description=Redis
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /etc/redis/6379.conf
ExecStop=/usr/locl/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
4.重新整理配置,讓systemctl識别得到
[root@CentOS7 redis]# systemctl daemon-reload
5.啟動關閉redis
[root@CentOS7 system]# systemctl start redis #啟動redis服務
[root@CentOS7 system]# systemctl stop redis #關閉redis服務
6.設定redis開機啟動
[root@CentOS7 system]# systemctl enable redis
總結
在建立服務的過程中,因過分參照文檔,沒有指定Type類型為forking。導緻啟動redis不成功(沒報錯),通過systemctl status redis檢視報錯,結合上網查資料解決,暫時沒研究systemctl服務,對配置的type類型也沒做了解。接下來了解一下。還要研究下redis的持久化。