首頁 >資料庫 >Redis >redis主從複製創建過程

redis主從複製創建過程

尚
轉載
2020-04-06 09:03:131808瀏覽

redis主從複製創建過程

首先我們會在從函式庫設定檔加入slaveof masterHost masterPort來指定對應的主函式庫。此時如果啟動從庫,那麼redis會找到指定ip和連接埠號碼來連接master;如果是一個正在運行的redis伺服器,那麼我們可以執行slaveof masterHost masterPort命令來讓從庫開始複製。

下面表格展示了redis在主從複製時經歷了哪些步驟:

#步驟 主伺服器 從伺服器
1 正常運作... 傳送sync指令,連線到主伺服器
2 執行bgsave指令,並將稍後的寫入指令記錄到緩衝區 如果設定slave -serve-stale-data 為yes( 預設設定) ,從函式庫會繼續回應客戶端的請求;否則除了INFO 和SLAVOF 指令之外的任何請求都會傳回給客戶端一個錯誤提示
#3 bgsave執行完畢,向從庫發送快照文件,期間繼續使用緩衝區記錄寫入命令 丟棄所有數據,載入主庫的快照檔案
4 快照傳送完畢,開始傳送先前提到的緩衝區中的寫入命令 完成快照的解釋運行,開始正常接收命令請求
5 #緩衝區內容發送完畢,從此,每執行一個命令,都會想從伺服器發送相同指令 執行主庫發來的緩衝區中的指令,執行完畢之後,接收並執行主函式庫發來的每一個寫入指令

要注意的是從庫在開始複製時,會先將本身的資料清空。

更多redis知識請關注redis入門教學欄位。

以上是redis主從複製創建過程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除