參考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的持久化。