一、簡介:redis提供了一套主從(master-slave模式),master一般用來讀寫,slave用來讀。在保證整體redis的可用情況下進行master和slave的切換。當然master和slave的切換是建立在哨兵模式下進行了,哨兵配置在下一篇說明,這裏只說明配置和效果。
二、redis的下載地址:http://download.redis.io/releases/
三、redis的安裝:https://www.cnblogs.com/ll409546297/p/6993778.html
四、redis的主從配置
redis1.conf(master)、redis2.conf(slave1)、redis3.conf(slave2)
1)master配置修改部分
bind 0.0.0.0 # 或者註釋 daemonize yes #守護線程 protected-mode no # 關閉保護 port 6370 # 端口 appendonly yes # 開啓日誌
2)slave配置修改
bind 0.0.0.0 # 或者註釋 daemonize yes #守護線程 protected-mode no # 關閉保護 port 6371/6372 # 端口 appendonly yes # 開啓日誌 replicaof 192.168.5.23 6370 # 配置master地址 # 老版的爲slaveof
五、啓動順序按照master-->slave啓動
./src/redis-server ./redis-conf/redis1.conf ./src/redis-server ./redis-conf/redis2.conf ./src/redis-server ./redis-conf/redis3.conf
六、啓動完成查看效果,6370(master)6371/6372(slave)
1)master
2)slave
七、測試戎機效果,kill master 查看slave是否生成主節點(此效果當哨兵存在時生效)
6372(master) 6371(slave)6370(戎機)
八、原來的6370(master)恢復後(此效果當哨兵存在時生效)
九、主從複製原理
1)全量複製
(1)slave連接master,發送sync命令
(2)master接受命令後,啓動存盤進程並收集修改命令
(3)完成後同步給slave,來完成一次同步
(4)slave接收後,讀入存盤加入內存
2)增量複製
master將新增的命令同步給slave,完成同步。