此次安裝是在CentOS7下安裝Redis5.0.7
一.首先準備Redis安裝包
這里下載的是 redis-5.0.7.tar.gz 安裝包,并將其直接放在了 root ?錄下
壓縮包下載地址:https://files.cnblogs.com/files/blogs/726807/redis-5.0.7.tar.gz
二.解壓安裝包
2.1在/data下創建redis檔案夾并進入
cd /data/
mkdir redis
cd redis
2.2將安裝包解壓到/data/redis/中
tar zxvf /root/redis-5.0.7.tar.gz -C /data/redis
解壓完之后會在/data/redis/下生成一個redis-5.0.7的檔案夾
三.編譯并安裝
cd /data/redis/redis-5.0.7
make && make PREFIX=/data/redis install
注意:因為缺少相關的包導致編譯失敗
舉例:
1.缺少gcc,則安裝gcc
yum -y install gcc
2.make時報如下錯誤:
zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/data0/src/redis-2.6.2/src'
make: *** [all] Error 2
原因是jemalloc多載了Linux下的ANSIC的malloc和free函式,解決辦法:make時添加引數,
make MALLOC=libc
3.make之后,會出現一句提示Hint: To run 'make test' is a good idea ;
但是不測驗,通常是可以使用的,若我們運行make test ,會有如下提示
[devnote@devnote src]$ make test
You need tcl 8.5 or newer in order to run the Redis test
make: ***[test] Error_1
解決辦法是用yum安裝tcl8.5(或去tcl的官方網站http://www.tcl.tk/下載8.5版本,并參考官網介紹進行安裝)
yum -y install tcl
補:問題解決完了最好再重新編譯下,
四.將Redis安裝為系統服務并后臺啟動
[root@localhost redis-5.0.7]# cd utils/
//運行服務腳本 腳本中redis安裝路徑為/data/redis
//此處我全部選擇的默認配置即可,有需要可以按需定制!!!
//參考地址:https://files.cnblogs.com/files/blogs/726807/install_server.sh
//可以直接粘貼上我的我把所有用到的Redis的所有配置都放在了/data/redis目錄下
說明:為了方便,最好自己配置一下install_server.sh中的路徑,就比如后續啟動需要的redis-server 和 組態檔6379.conf 把它倆放到建的redis檔案夾下,方便查找
[root@localhost utils]# ./install_server.sh
五.查看Redis服務啟動情況,并停止Redis服務
//查看服務狀態
systemctl status redis
//停止服務
systemctl stop redis
//結束行程
ps -ef|grep redis
kill -9 PID
六.修改組態檔和修改系統配置(保證redis的遠程可以訪問)
6.1.編輯redis組態檔
vi /etc/redis/6379.conf(默認組態檔位置,修改自己實際組態檔)
? vi /data/redis/16379.conf
修改內容:
1.將 bind 127.0.0.1 修改為 0.0.0.0 //修改IP
2.daemonize yes //在后臺運行
3.protected-mode 設定成no(默認是設定成yes的, 防止了遠程訪問,在redis3.2.3版本后)
4.requirepass 123456 //設定密碼 可不設定
6.2.關閉防火墻和SELINUX
6.2.1關閉防火墻
1、停止firewalld服務
systemctl stop firewalld
2、禁止firewalld開機啟動
systemctl disable firewalld
6.2.2關閉SELINUX
vi /etc/selinux/config
將`SELINUX=enforcing`修改為`SELINUX=disabled`,保存退出
七.啟動Redis并遠程訪問
7.1啟動Redis (使用絕對路徑啟動,一勞永逸,免去一些找不到命令錯誤)
/usr/local/bin/redis-server /etc/redis/6379.conf //此處使用的是默認路徑
/data/redis/bin/redis-server /data/redis/16379.conf //自己的路徑
? ps -ef|grep redis //查看是否啟動成功
7.2遠程訪問Redis
? 輸入IP,默認埠號6379,密碼,測驗連接,搞定!
八.設定開機啟動Redis(建議設定)
方式 1 vi /etc/rc.d/rc.local
添加啟動命令到 /etc/rc.d/rc.local 中:
/usr/local/redis-5.0.7/bin/redis-server /etc/redis/redis.conf //此處使用的是默認路徑
/usr/local/redis/bin/redis-server /usr/local/redis/6379.conf //自己的路徑
? 方式 2 . vi /lib/systemd/system/redis.service
[Unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
#PIDFile=/data/redis/redis.pid
ExecStart=/data/redis/bin/redis-server /data/redis/16379.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
ExecStartPost=/bin/sh -c "echo $MAINPID > /data/redis/redis.pid"
PrivateTmp=true
[Install]
WantedBy=multi-user.target
//多載系統服務
sudo systemctl daemon-reload
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/402391.html
標籤:Linux
下一篇:Linux之Nginx入門
