国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql 雙向同步的鍵值沖突問題的解決方法分享

2020-01-19 00:04:21
字體:
來源:轉載
供稿:網友
出現的問題(多主自增長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 重復。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江津市| 玉溪市| 永川市| 祁门县| 资溪县| 凤山市| 高台县| 东乌| 宁武县| 金门县| 苏州市| 额济纳旗| 闻喜县| 贺兰县| 隆昌县| 常宁市| 霍邱县| 台湾省| 双峰县| 淳安县| 关岭| 上高县| 安多县| 九江县| 延长县| 榆社县| 界首市| 敦化市| 贵州省| 衡水市| 谷城县| 西宁市| 白沙| 南召县| 镇平县| 滨海县| 平陆县| 丰顺县| 洮南市| 达孜县| 临海市|