標籤:db檔案 伺服器 關係 hang 預設 .com service 資料同步 csdn
原文:Redis 主從配置(Windows版)
安裝從庫
1、複製一份 Redis 檔案,當做從庫。
2、修改從庫檔案中 redis.windows.conf 的連接埠號碼。
3、安裝服務,需要重新設定名稱。然後去服務中,開啟“redis6380”(此時就可以串連6380的庫了)
redis-server --service-install redis.windows.conf --service-name Redis6380
配置主從伺服器
Redis Slaveof 命令
Redis Slaveof 命令可以將當前伺服器轉變為指定伺服器的從屬伺服器(slave server)。
如果當前伺服器已經是某個主伺服器(master server)的從屬伺服器,那麼執行 slaveof host port 將使當前伺服器停止對舊主伺服器的同步,丟棄舊資料集,轉而開始對新主伺服器進行同步。
另外,對一個從屬伺服器執行命令 slaveof no one 將使得這個從屬伺服器關閉複製功能,並從從屬伺服器轉變回主伺服器,原來同步所得的資料集不會被丟棄。
利用『 slaveof no one 不會丟棄同步所得資料集 』這個特性,可以在主伺服器失敗的時候,將從屬伺服器用作新的主伺服器,從而實現無間斷運行。
在從庫6380上輸入命令,來開啟資料同步(格式:slaveof host port)
slaveof 127.0.0.1 6379 //同步主庫 6379
在從庫上輸入命令,關閉資料同步
slaveof no one //取消同步
1、通過 cd 命令進入解壓的目錄,使用 redis-cli -p 6380 命令切到6380從庫
2、slaveof 127.0.0.1 6379 設定主從,6379是主庫,6380是從庫。(設定同步時,會將主庫所有資料一起同步過來。)
3、測試
6379庫 set A 123 ,6380庫 get A,從庫預設是不允許寫入資料的。
4、永久儲存主從關係
按如下所示,添加命令 slaveof 127.0.0.1 6379 ,配置好以後,每次redis服務重啟時,會自動同步主庫資料。
主從同步過程
下面來研究下slave伺服器和master伺服器間是如何建立起主從同步機制的。
1、Slave服務啟動,主動串連Master,並發送SYNC命令,請求初始化同步
2、Master收到SYNC後,執行BGSAVE命令產生RDB檔案,並緩衝該時間段內的寫命令
3、Master完成RDB檔案後,將其發送給所有Slave伺服器
4、Slave伺服器接收到RDB檔案後,刪除記憶體中舊的快取資料,並裝載RDB檔案
5、Master在發送完RDB後,即刻向所有Slave伺服器發送緩衝中的寫命令
6、至此初始化完成,後續進行增量同步處理
相關文章:C# Redis 視覺化檢視 Redis Desktop Manager
C# StackExchange.Redis 簡單使用
C# Redis Windows版下載與安裝
參考文章:78816071
Redis 主從配置(Windows版)