CentOS7安裝redis並配置外網可訪問(區域網可參考)
1、安裝gcc編輯器
安裝redis需要依賴gcc環境,執行如下命令安裝:
yuminstall-ygcc
如果機器沒有網路的話,可以參考這篇文章:
2、下載redis安裝包
redis官網:https://redis.io/download
提供一下我的6.2.1安裝包:https://niceyoo.lanzous.com/itKBqmx8omj
下載後上傳至 CentOS ,比如上傳至/usr/local/
3、解壓並編譯安裝redis
指令命令如下:
1、進入安裝包目錄
cd/usr/local/
2、解壓安裝包
tar-zxvfredis-6.2.1.tar.gz
3、進入解壓後的redis目錄並編譯
cdredis-6.2.1
make
4、安裝至指定目錄
將redis安裝至指定目錄,可以自行修改路徑,如下以/usr/local/redis
為例:
makeinstallprefix=/usr/local/redis
4、啟動redis
啟動 redis 有兩種方式,一種是前臺介面啟動,只要關閉介面就關閉了,另一種是後臺啟動。
4.1、前臺介面啟動
進入 redis 安裝目錄的 bin 目錄:
cd/usr/local/redis/bin
此時,只要執行如下命令就可以啟動了:
./redis-server
啟動截圖如下:
此時有個問題就是,並不知道啟動的配置檔案在哪...
其實我們可以直接通過 find 命令來查一下:
find/-name'redis.conf'
結果如下:
前臺啟動方式不太常用,只要關了介面,redis就停了。
4.2、後臺服務啟動
我們從之前解壓後的安裝包中複製一份 redis.conf 檔案到 redis 安裝目錄中。
cp/usr/local/redis-6.2.1/redis.conf/usr/local/redis/bin/
然後修改 redis.conf 配置檔案的執行緒模式引數:
vi/usr/local/redis/bin/redis.conf
PS:vi 快捷鍵,按一下/
,之後輸入【關鍵字】即可查詢引數。
主要修改daemonize
對應的值為 yes
1、修改之前
daemonizeno
2、修改之後
daemonizeyes
關於這個引數的取值解釋:
- yes:redis採用的是單程序多執行緒的模式。當redis.conf中選項daemonize設定成yes時,代表開啟守護程序模式。在該模式下,redis會在後臺執行,並將程序pid號寫入至redis.conf選項pidfile設定的檔案中,此時redis將一直執行,除非手動kill該程序。
- no:當daemonize選項設定成no時,當前介面將進入redis的命令列介面,exit強制退出或者關閉連線工具(putty,xshell等)都會導致redis程序退出。
修改完,儲存退出。
執行如下命令再次啟動 redis:
./redis-serverredis.conf
至此redis就以後臺方式啟動了。
5、設定外網可訪問
預設的配置檔案是不支援外網訪問的,接下來修改外網訪問的引數。
還是修改配置檔案:
vi/usr/local/redis/bin/redis.conf
找到下面這三個引數:
- bind 127.0.0.1(繫結允許訪問的ip)
- protected-mode yes(保護模式開)
- #requirepass yourpassword (請求訪問的密碼)
一二項是組合項,尤為重要,第三項就是設定密碼,在一定程度上對服務區的保護。
修改為如下:
- #bind 127.0.0.1
- protected-mode no
- requirepass 你的密碼
修改後,儲存退出。
6、註冊redis服務
每次啟動關閉redis甚是麻煩,不如直接註冊為服務。
執行如下命令建立redis服務:
vi/etc/systemd/system/redis.service
新增如下命令:
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server/usr/local/redis/bin/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
其中 ExecStart 引數對應的安裝 Redis 目錄下的 redis-server,配置檔案同上。
設定開機啟動:
systemctldaemon-reload
systemctlstartredis.service
systemctlenableredis.service
7、常用的服務命令
啟動redis服務
systemctlstartredis.service
停止redis服務
systemctlstopredis.service
重新啟動服務
systemctlrestartredis.service
檢視服務當前狀態
systemctlstatusredis.service
設定開機自啟動
systemctlenableredis.service
停止開機自啟動
systemctldisableredis.service