MySQL雙主如何解決主鍵沖突問題


搭建了個雙主,突然想到如果表設置了自增主鍵的話,當業務同時向雙庫中插入一條數據,這時候情況是什么樣子的呢?

比如:主庫A和主庫B上的一個表數據為: 12 'ninhao' 。當業務同時寫入數據后主庫A的數據是13  'new nihao' ? 那主庫B上的數據是什么呢?主鍵也是13 ?

建議類似雙主這種情況:

事先設置好offset和increment的值,即:實現設置好自增字段的初始值和步長。主庫A為奇數起步,主庫B為偶數起步。兩者都采用相同的步長。

1)、設置主主服務器的自增長偏移位置不同:

A :auto_increment_offset=3

B :auto_increment_offset=4

2)、設置主主服務器步長相同:

​auto_increment_increment=2

 

 

雙主的這個問題解決了。另外又有一個想法:如果業務同時update 一條數據,現在又是神情況呢?

還有一個問題,主庫A上創建庫,創建表,插入數據,主庫B直接報錯了。

請關注下篇博客:用crontab模擬同時update。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM