1. 程式人生 > >MySQL主主同步

MySQL主主同步

異地 間隔 雙機 請求 位置 沖突 負載 插入 off

MySQL主主同步

雙機熱備的概念簡單說一下,就是要保持兩個數據庫的狀態自動同步。對任何一 個數據庫的操作都自動應用到另外一個數據庫,始終保持兩個數據庫數據一致。 這樣做的好處多。 1. 可以做災備,其中一個壞了可以切換到另一個。 2. 可以做 負載均衡,可以將請求分攤到其中任何一臺上,提高網站吞吐量。 對於異地熱 備,尤其適合災備。以下架構,可以在雙主上實現負載均衡,也可以利用 keeplived實現vip訪問。

解決主鍵自增長變量沖突

master1:

 auto_increment_increment =2   # 自增ID的間隔 1 3 5 間隔為2
 auto_increment_offset=1       # ID的初始位置
 log-bin=mysql-bin
 log-slave-updates

master2:
 auto_increment_increment =2   # 自增ID的間隔 2 4 6 間隔為2
 auto_increment_offset=2       # ID的初始位置
 log-bin=mysql-bin
 log-slave-updates

存在問題:
可能master2在寫入數據的時候,不會從2開始,可能會從6開始,接master1最大的ID後面插入,形成6 8 10

在主從同步已經建好的情況下:

MySQL主主同步