mysql 雙向同步的鍵值抵觸成績的處理辦法分享。本站提示廣大學習愛好者:(mysql 雙向同步的鍵值抵觸成績的處理辦法分享)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql 雙向同步的鍵值抵觸成績的處理辦法分享正文
湧現的成績(多主自增加ID反復)
1:起首我們經由過程A,B的test表構造
2:失落A,在B上對數據表test(存在自增加ID)履行拔出操作,前往拔出ID為1
3:後停失落B,在A上對數據表test(存在自增加ID)履行拔出操作,前往的拔出ID也是1
4:然後 我們同時啟動A,B,就會湧現主鍵ID反復
處理辦法:
我們只需包管兩台辦事器上拔出的自增加數據分歧便可以了
如:A查奇數ID,B插偶數ID,固然假如辦事器多的話,你可以界說算法,只需分歧便可以了
在這裡我們在A,B上參加參數,以完成奇偶拔出
A:my.cnf上參加參數
auto_increment_offset = 1
auto_increment_increment = 2
如許A的auto_increment字段發生的數值是:1, 3, 5, 7, …等奇數ID了
B:my.cnf上參加參數
auto_increment_offset = 2
auto_increment_increment = 2
如許B的auto_increment字段發生的數值是:2, 4, 6, 8, …等偶數ID了
可以看出,你的auto_increment字段在分歧的辦事器之間相對不會反復,所以Master-Master構造就沒有任何成績了。固然,你還可使用3台,4台,或許N台辦事器,只需包管auto_increment_increment = N 再設置一下auto_increment_offset為恰當的初始值便可以了,那樣,我們的MySQL可以同時有幾十台主辦事器,而不會湧現自增加ID 反復。