**導讀**
> 作者:楊漆
> 16年關系型資料庫管理,從oracle 9i 、10g、11g、12c到Mysql5.5、5.6、5.7、8.0 到TiDB獲得3個OCP、2個OCM;運維路上不平坦,跌過不少坑、熬過許多夜。把工作筆記整理出來分享給大夥兒,希望幫到大家少走彎路、少熬夜。
wget http://download.redis.io/releases/redis-3.2.9.tar.gz
yum -y install gcc
tar -zxvf redis.tar.gz -C /opt/
mv /opt/redis-3.2.9 /opt/redis3.2.9
cd /opt/redis3.2.9
make
cd src/
make install
mkdir bin
cp src/redis-server bin/
cp src/redis-cli bin/
vi redis.conf
##允許所有ip通路
# bind 127.0.0.0 注釋掉表示允許所有的IP通路,綁定IP隻允許特定IP通路
ps -aux|grep redis
# 查詢結果中若端口号6379(預設)前為*表示允許所有IP通路。 如果不是就要重新修改redis.conf檔案
## 在背景運作
daemonize yes
requirepass 123456
## 啟動
/opt/redis3.2.9/bin/redis-server redis.conf
## 登陸redis
redis-cli
AUTH "123456"
PING
## 結束
ps -aux|grep redis ## 查出id
kill -9 id
## 設定開機自啟動
mkdir /etc/redis
cp /opt/redis3.2.9/redis.conf /etc/redis/6379.conf
cp /opt/redis3.2.9/utils/redis_init_scripts /etc/init.d/redisd
vi /etc/init.d/redisd
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
## 在第一行加入如下兩行注釋,儲存退出. 意思是,redis服務必須在運作級2,3,4,5下被啟動或關閉,啟動的優先級是90,關閉的優先級是10
chkconfig redisd on
service redisd start
service redisd stop
## 如果 提示/var/run/redis_6379.pid does not exist, process is not running ,說明在run下沒有這個檔案
解決方案: 進入到/var/run下,若真的沒有這個檔案,但有redis.pid檔案時,修改啟動腳本 vi /etc/init.d/redisd
在第三個$EXEC $CONF 後邊加一個&,讓redis作為背景服務啟動,否則該服務會獨占輸入屏。
#### redis.conf檔案的更多配置參數:
1、daemonize 如果需要在背景運作,把該項改為yes
2、pidfile 配置多個pid的位址 預設在/var/run/redis.pid
3、bind 綁定ip,設定後隻接受來自該ip的請求
4、port 監聽端口,預設是6379
5、loglevel 分為4個等級:debug verbose notice warning
6、logfile 用于配置log檔案位址
7、databases 設定資料庫個數,預設使用的資料庫為0
8、save 設定redis進行資料庫鏡像的頻率。
9、rdbcompression 在進行鏡像備份時,是否進行壓縮
10、dbfilename 鏡像備份檔案的檔案名
11、Dir 資料庫鏡像備份的檔案放置路徑
12、Slaveof 設定資料庫為其他資料庫的從資料庫
13、Masterauth 主資料庫連接配接需要的密碼驗證
14、Requriepass 設定 登陸時需要使用密碼
15、Maxclients 限制同時使用的客戶數量
16、Maxmemory 設定redis能夠使用的最大記憶體
17、Appendonly 開啟append only模式
18、Appendfsync 設定對appendonly.aof檔案同步的頻率(對資料進行備份的第二種方式)
19、vm-enabled 是否開啟虛拟記憶體支援 (vm開頭的參數都是配置虛拟記憶體的)
20、vm-swap-file 設定虛拟記憶體的交換檔案路徑
21、vm-max-memory 設定redis使用的最大實體記憶體大小
22、vm-page-size 設定虛拟記憶體的頁大小
23、vm-pages 設定交換檔案的總的page數量
24、vm-max-threads 設定VM IO同時使用的線程數量
25、Glueoutputbuf 把小的輸出緩存存放在一起
26、hash-max-zipmap-entries 設定hash的臨界值
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwIjNx8CX39CXy8CXycXZpZVZnFWbp9zZlBnaukDZlFDNxcTYlhzYzQGN2gTZmZzNklzMiNWZ3QmYihzMvwVO5QDNwIDOtUGall3LcVmdhNXLwRHdo9CXt92YucWbpRWdvx2Yx5yazF2Lc9CX6MHc0RHaiojIsJye.jpeg)