您的位置:首頁技術文章
文章詳情頁

單實例mysql,表主鍵自增,在分布式大量插入的情況下主鍵會出現沖突嗎?

瀏覽:79日期:2022-06-14 08:17:50

問題描述

單實例mysql,表主鍵自增,在分布式大量插入的情況下主鍵會出現沖突嗎?(innodb/myisam)?

問題解答

回答1:

先說結論: 不會 。

第一種情況:mysql分布式一般是多臺數據庫通過日志來進行業務無關的同步,所以不會重復。

第二種情況:像淘寶這種特大型分布式則是分區寫入。也就是淘寶他們不同區的業務依托的數據庫是不一樣的。其實就是若干個第一種情況的集合。自然也不會。

回答2:

沖突是不會的,但是要注意大并發量插入時會出現自增id爭搶導致鎖的情況,因為自增的原子操作還是先獲取當前id值再插入,這中間必然會有鎖,只不過效率高不易出現而已,所以業務上有大并發插入最好還是使用多實例分片方案

回答3:

我覺得應該不會沖突,但是這種高并發的時候,一個 MySQL 是搞不定的,你更要關心的是多個 MySQL 之間產生的 id 怎么不重復,有很多分布式環境下生成唯一 id 的辦法。

国产综合久久一区二区三区