一、複製一份 Redis 文件,當作從庫。html
二、修改從庫文件中 redis.windows.conf 的端口號。redis
三、安裝服務,須要從新設置名稱。而後去服務中,開啓「redis6380」(此時就能夠鏈接6380的庫了)windows
redis-server --service-install redis.windows.conf --service-name Redis6380緩存
Redis Slaveof 命令服務器
Redis Slaveof 命令能夠將當前服務器轉變爲指定服務器的從屬服務器(slave server)。併發
若是當前服務器已是某個主服務器(master server)的從屬服務器,那麼執行 slaveof host port 將使當前服務器中止對舊主服務器的同步,丟棄舊數據集,轉而開始對新主服務器進行同步。工具
另外,對一個從屬服務器執行命令 slaveof no one 將使得這個從屬服務器關閉複製功能,並從從屬服務器轉變回主服務器,原來同步所得的數據集不會被丟棄。post
利用『 slaveof no one 不會丟棄同步所得數據集 』這個特性,能夠在主服務器失敗的時候,將從屬服務器用做新的主服務器,從而實現無間斷運行。測試
在從庫6380上輸入命令,來開啓數據同步(格式:slaveof host port)url
slaveof 127.0.0.1 6379 //同步主庫 6379
在從庫上輸入命令,關閉數據同步
slaveof no one //取消同步
一、經過 cd 命令進入解壓的目錄,使用 redis-cli -p 6380 命令切到6380從庫
二、slaveof 127.0.0.1 6379 設置主從,6379是主庫,6380是從庫。(設置同步時,會將主庫全部數據一塊兒同步過來。)
三、測試
6379庫 set A 123 ,6380庫 get A,從庫默認是不容許寫入數據的。
四、永久保存主從關係
按以下所示,添加命令 slaveof 127.0.0.1 6379 ,配置好之後,每次redis服務重啓時,會自動同步主庫數據。
下面來研究下slave服務器和master服務器間是如何創建起主從同步機制的。
一、Slave服務啓動,主動鏈接Master,併發送SYNC命令,請求初始化同步
二、Master收到SYNC後,執行BGSAVE命令生成RDB文件,並緩存該時間段內的寫命令
三、Master完成RDB文件後,將其發送給全部Slave服務器
四、Slave服務器接收到RDB文件後,刪除內存中舊的緩存數據,並裝載RDB文件
五、Master在發送完RDB後,即刻向全部Slave服務器發送緩存中的寫命令
六、至此初始化完成,後續進行增量同步
相關文章:C# Redis 可視化工具 Redis Desktop Manager
參考文章:https://blog.csdn.net/guweiyu_thinker/article/details/78816071