redis主從複製

                                                                         redis主從複製實驗

主從複製時狀態
#複製在 Master 端是非阻塞模式的,這意味着即便是多個 Slave 執行首次同步時,
Master 依然可以提供查詢服務;
#複製在 Slave 端也是非阻塞模式的:如果你在 redis.conf 做了設置,Slave 在執行首次同步的時候仍可以使用舊數據集提供查詢;你也可以配置爲當 Master與 Slave 失去聯繫時,讓 Slave 返回客戶端一個錯誤提示。
#當 Slave 要刪掉舊的數據集,並重新加載新版數據時,Slave 會阻塞連接請求
(一般發生在與 Master 斷開重連後的恢復階段);



實驗:

rhel6.5     selinx and iptables disabled

server1    192.168.122.11

server2    192.168.122.12


一、Redis 安裝

[root@server1 ~]# yum install -y gcc   安裝所需gcc環境
下載 redis-4.0.8.tar.gz

[root@server1 ~]# tar zxf redis-4.0.8.tar.gz   解壓

Screenshot from 2018-06-24 23-35-04.png


[root@server1 ~]# ls /usr/local/bin/
redis-benchmark  redis-check-rdb  redis-sentinel
redis-check-aof  redis-cli        redis-server


Redis-benchmark      壓力測試工具
Redis-check-aof      檢查redis持久化命令文件的完整性
Redis-check-dump     檢查redis持久化數據文件的完整性
Redis-cli            redis在linux上的客戶端
Redis-sentinel       redis-sentinel是集羣管理工具,主要負責主從切換。
Redis-server         Redis服務器的daemon啓動程序


編譯完成後

[root@server1 redis-4.0.8]# cd utils/

[root@server1 utils]# ./install_server.sh (一路回車)

server2與server1一致!


二、修改配置文件

master 端

[root@server1 redis]# pwd
/etc/redis
[root@server1 redis]# vim 6379.conf

Screenshot from 2018-06-24 23-51-01.png

bind 0.0.0.0   本地所有ip

[root@server1 redis]# /etc/init.d/redis_6379 restart   重新啓動


slave 端

[root@server2 utils]# cd /etc/redis/
[root@server2 redis]# vim 6379.conf 


Screenshot from 2018-06-24 23-54-22.png

slaveof 192.168.122.11  6379      寫入主的ip 端口 

[root@server2 redis]# /etc/init.d/redis_6379 restart  重新啓動

查看端口

Screenshot from 2018-06-24 23-55-55.png


測試:

Screenshot from 2018-06-24 23-56-55.png


在主上寫入數據

Screenshot from 2018-06-24 23-57-25.png

[root@server2 redis]# redis-cli   從上可讀取 

Screenshot from 2018-06-24 23-58-02.png





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章