centos 默認(rèn)情況下已經(jīng)安裝過gcc





如果讓redis后臺運行啟動就需要修改redis.conf配置文件。在配置文件中找到daemonize no改為yes
另外一種安裝方式是默認(rèn)安裝redis
第一步

第二步
cd /usr/local/目錄下wget http://download.redis.io/releases/redis-5.0.4.tar.gz

第三步?
在/usr/local/ 進行解壓 (tar -xzvf redis-5.0.4.tar.gz)
第四步
切換到解壓后的目錄 ?cd redis-4.0.9
5.編譯 ?make?有可能會編譯出錯說gcc環(huán)境未安裝 貌似redis環(huán)境需要C語言環(huán)境支持?執(zhí)行命令行 yum?install?-y?gcc?g++?gcc-c++?make
6.進入到src目錄?cd src
7.執(zhí)行安裝 ?make install
到此就安裝完成。但是,由于安裝redis的時候,我們沒有選擇安裝路徑,故是默認(rèn)位置安裝。在此,我們可以將可執(zhí)行文件和配置文件移動到習(xí)慣的目錄。?
cd /usr/local?
mkdir -p /usr/local/redis/bin?
mkdir -p /usr/local/redis/etc?
cd /usr/local/redis-4.0.2?
cp ./redis.conf /usr/local/redis/etc
cd src
cp mkreleasehdr.sh redis-benchmark redis-check-aof ?redis-cli redis-server redis-sentinel /usr/local/redis/bin
比較重要的3個可執(zhí)行文件:
redis-server:Redis服務(wù)器程序
redis-cli:Redis客戶端程序,它是一個命令行操作工具。也可以使用telnet根據(jù)其純文本協(xié)議操作。
redis-benchmark:Redis性能測試工具,測試Redis在你的系統(tǒng)及配置下的讀寫性能
Redis的啟動命令:?
/usr/local/redis/bin/redis-server?
二、Redis的配置
下面列舉了Redis中的一些常用配置項:
daemonize 如果需要將Redis服務(wù)以守護進程在后臺運行,則把該項的值改為yes
pidfile 配置多個pid的地址,默認(rèn)在/var/run/redis/pid
bind 綁定ip,設(shè)置后只接受來自該ip的請求
port 監(jiān)聽端口,默認(rèn)是6379
timeout 客戶端連接超時的設(shè)定,單位是秒
loglevel 分為4級,debug、verbose、notice、warning
logfile 配置log文件地址
databases 設(shè)置數(shù)據(jù)庫的個數(shù),默認(rèn)使用的數(shù)據(jù)庫為0
save 設(shè)置redis進行數(shù)據(jù)庫鏡像的頻率
rdbcompression 在進行鏡像備份時,是否進行壓縮
Dbfilename 鏡像備份文件的文件名
Dir 數(shù)據(jù)庫鏡像備份文件的存放路徑
Slaveof 設(shè)置數(shù)據(jù)庫為其他數(shù)據(jù)庫的從數(shù)據(jù)庫
Masterauth 主數(shù)據(jù)庫連接需要的密碼驗證
Requirepass 設(shè)置登錄時,需要使用的密碼
Maxclients 設(shè)置同時連接的最大客戶端數(shù)量
Maxmemory 設(shè)置redis能夠使用的最大內(nèi)存
Appendonly 開啟append only模式
Appendfsync 設(shè)置對appendonly.aof文件同步的頻率
vm-enabled 是否開啟虛擬內(nèi)存支持
vm-swap-file 設(shè)置虛擬內(nèi)存的交換文件路徑
vm-max-memory 設(shè)置redis能夠使用的最大虛擬內(nèi)存
vm-page-size 設(shè)置虛擬內(nèi)存的頁大小
vm-pages 設(shè)置交換文件的總的page數(shù)量
vm-max-threads 設(shè)置VMIO同時使用的線程數(shù)量
Glueoutputbuf 把小的輸出緩存存放在一起
hash-max-zipmap-entries 設(shè)置hash的臨界值
Activerehashing 重新hash
修改redis的配置參數(shù):
vi /usr/local/redis/etc/redis.conf
將daemonize no改為daemonize yes,保存退出。
再來啟動redis服務(wù)器
cd /usr/local/redis/bin
./redis-server /usr/local/redis/etc/redis.conf 啟動redis并指定配置文件
ps aux | grep redis 查看redis是否啟動成功
netstat -tlun 查看主機的6379端口是否在使用(監(jiān)聽)
./redis-cli 打開redis的客戶端
quit 退出redis的客戶端
pkill redis-server 關(guān)閉redis服務(wù)器
./redis-cli shutdown 也可以通過這條命令關(guān)閉redis服務(wù)器
最后一步測試redis
cd /usr/local/bin/
[root@xxxx bin]# ./redis-cli?
redis> set foo bar
OK
redis> get foo
"bar"
redis集群搭建
1.wget http://download.redis.io/releases/redis-5.0.4.tar.gz
2.tar -xzvf redis-5.0.4.tar.gz -C /usr/local/src/
3.cd /usr/local/src/redis-5.04/
4.make install? PREFIX=/usr/local/redis
5.cp /usr/local/src/redis-5.04/redis.config /usr/local/redis/bin/
6.配置主服務(wù)器
vim redis.config
修改
69行? bind 192.168.0.115? 為本服務(wù)器ip
92行 port 6379 修改端口號
136行 daemonize yes 修改no為yes
158行 pidfile "/var/run/redis_6379.pid"
主服務(wù)器關(guān)閉rdb配置
218行 #save 900 1
219行 #save 300 10
220行 #save 60 10000
253行 #dbfilename "dump6379.rdb"
263行? dir "/usr/local/redis/bin"? rdb和aof文件默認(rèn)生成路徑
507行 requirepass "123456"? ? ? 添加密碼
699行 appendonly yes? ? ? ? ? ? ? 開啟aof日志
703行 appendfilename "appendonly6379.aof"
啟動主服務(wù)器
[root@local62 bin]# ./redis-server ./redis.conf
2872:C 25 Aug 2019 22:59:26.927 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
2872:C 25 Aug 2019 22:59:26.927 # Redis version=5.0.4, bits=64, commit=00000000, modified=0, pid=2872, just started
2872:C 25 Aug 2019 22:59:26.927 # Configuration loaded
客戶端連接
[root@local62 bin]# ./redis-cli -h 192.168.0.115 -p 6379
192.168.0.115:6379> auth 123456
OK
192.168.0.115:6379>keys *
-------------------------------------------------------------------------------------------------
配置從服務(wù)器
1.wget http://download.redis.io/releases/redis-5.0.4.tar.gz
2.tar -xzvf redis-5.0.4.tar.gz -C /usr/local/src/
3.cd /usr/local/src/redis-5.04/
4.make install? PREFIX=/usr/local/redis
5.cp /usr/local/src/redis-5.04/redis.config /usr/local/redis/bin/
6.配置從服務(wù)器
vim redis6380.conf
修改
69行? bind 192.168.0.63? 為本服務(wù)器ip
92行 port 6380 修改端口號
136行 daemonize yes 修改no為yes
158行 pidfile "/var/run/redis_6380.pid"
253行 dbfilename "dump6380.rdb"
263行 dir "/usr/local/redis/bin/rdb"
286行 replicaof 192.168.0.63 6380 //從服務(wù)器的ip地址 端口號
293行 masterauth "123456" //要保證和主服務(wù)器設(shè)置的密碼一致
324行 replica-read-only yes? //從服務(wù)器默認(rèn)是只讀模式
699行 #appendonly no
703行 #appendfilename "appendonly6380.aof"
配置文件中默認(rèn)rdb已開啟。aof默認(rèn)情況下是關(guān)閉的。所以這個配置文件就沒什么可以修改了。
[root@localhost63 bin]# ./redis-server ./redis6380.conf
cp /usr/local/src/redis-5.04/sentinel.conf /usr/local/redis/bin/
修改監(jiān)聽文件(哨兵)
121行 sentinel monitor mymaster 192.168.0.115 6379? 2
122行 sentinel auth-pass mymaster 123456 //如果主服務(wù)器設(shè)置登錄密碼這個地方需要加密碼(mymaster這個名字是可以修改的。我就按照默認(rèn)名字來配置了。)
--------------------------------------------------------------------------------------------------------
.配置從服務(wù)器
vim redis6381.conf
修改
69行? bind 192.168.0.63? 為本服務(wù)器ip
92行 port 6381 修改端口號
136行 daemonize yes 修改no為yes
158行 pidfile "/var/run/redis_6381.pid"
從服務(wù)器關(guān)閉rdb配置
218行 #save 900 1
219行 #save 300 10
220行 #save 60 10000
253行 #dbfilename "dump6381.rdb"
263行 #dir "/usr/local/redis/bin/rdb"
286行 replicaof 192.168.0.63 6381 //從服務(wù)器的ip地址 端口號
293行 masterauth "123456" //要保證和主服務(wù)器設(shè)置的密碼一致
324行 replica-read-only yes? //從服務(wù)器默認(rèn)是只讀模式
699行 #appendonly no? //關(guān)閉aof
703行 #appendfilename "appendonly6380.aof"
[root@local63 bin]# ./redis-server ./redis6381.conf
最后啟動哨兵
[root@local63 bin]# ./redis-server ./sentinel.conf --sentinel