NoSQL之redis(主從複製)
阿新 • • 發佈:2018-12-27
1.redis主從複製的介紹:
持久化保證了即使redis伺服器重啟也不會丟失資料,因為redis伺服器重啟後將硬碟上持久化的資料恢復到記憶體中,
但是當redis伺服器的硬碟損壞了可能會導致資料丟失,如果通過redis的主從複製機制就可以避免這種單點故障。
如下圖:
解釋:
- 主redis的資料有兩個副本,即從節點redis1和從節點redis2,即使一臺redis伺服器宕機其他的兩臺伺服器可以繼續提供使用
- 主redis中的資料和從redis上的資料儲存資料實時同步,當主redis寫入資料時通過主從複製機制會複製寫入的資料到其他從redis中
- 只有一個主redis,可以有多個從redis
- 主從複製不會阻塞master,在同步資料時,master可以繼續處理client的請求
- 主機一旦發生增刪改操作,那麼從節點在同步資料時,從機中不能執行寫操作。
- 一個redis可以既是主又是從:如圖
2. 主從複製的相關配置
注意:在主從複製的時候,主節點無需配置,所有的配置都是在從節點中。
①將主節點的redis服務複製到其他節點上
這裡使用的是scp命令, scp -r ../../redis-3.0.0 hostname:/dir
②修改從節點中的redis.conf檔案:
配置slaveof 192.168.242.137 6379
③清除從機中的持久化檔案
[[email protected] bin2]# rm -rf appendonly.aof dump.rdb
④啟動從機
[[email protected] bin2]# ./redis-server redis.conf (這裡在每一個從節點的機器中都啟動)