redis中配置主從複製很是簡單,有兩種方式redis
第一種是修改redis.conf配置文件bash
# slaveof <masterip> <masterport> -- 放開這句的註釋,填寫上master的ip和port
若是master有密碼的話,在下面這句配置master的密碼測試
# masterauth <master-password>
重啓slave服務,能夠看到以下輸出命令行
21080:S 05 May 22:32:15.220 * Connecting to MASTER 127.0.0.1:6379 21080:S 05 May 22:32:15.221 * MASTER <-> SLAVE sync started 21080:S 05 May 22:32:15.221 * Non blocking connect for SYNC fired the event. 21080:S 05 May 22:32:15.221 * Master replied to PING, replication can continue... 21080:S 05 May 22:32:15.221 * Trying a partial resynchronization (request 19832def39059f8b98713d79cf098b74c76f0b7a:281). 21080:S 05 May 22:32:15.221 * Successful partial resynchronization with master. 21080:S 05 May 22:32:15.221 * MASTER <-> SLAVE sync: Master accepted a Partial Resynchronization.
表明配置成功3d
第二種是在salve客戶端執行命令code
127.0.0.1:6380> SLAVEOF 127.0.0.1 6379 OK
這時候能夠看到slave服務端會自動輸出跟上面相同的內容,就配置成功了ip
咱們進行測試get
在master的客戶端上寫入數據同步
127.0.0.1:6379> set sync_key 1 OK
從salve客戶端進行get操做,能夠看到數據能夠正確的取出it
127.0.0.1:6380> get sync_key "1"
執行sync命令能夠手動進行同步數據
因爲配置文件中,默認slave服務端只能進行查詢的操做,因此在slave命令行中執行寫的操做會提示錯誤
127.0.0.1:6380> set haha1 1 (error) READONLY You can't write against a read only slave.