一、背景
以前使用SQL Server進行表分區的時候就碰到很多關于唯一索引的問題:Step8:SQL Server 當表分區遇上唯一約束,沒想到在MySQL的分區中一樣會遇到這樣的問題:MySQL表分區實戰。
今天我們來了解MySQL唯一索引的一些知識:包括如何創建,如何批量插入,還有一些技巧上SQL;
這些問題的根源在什么地方?有什么共同點?MySQL中也有分區對齊的概念?唯一索引是在很多系統中都會出現的要求,有什么辦法可以避免?它對性能的影響有多大?
二、過程
(一) 導入差異數據,忽略重復數據,IGNORE INTO的使用
在MySQL創建表的時候,我們通常創建一個表的時候是以一個自增ID值作為主鍵,那么MySQL就會以PRIMARY KEY作為聚集索引鍵和主鍵,既然是主鍵,那當然是唯一的了,所以重復執行下面的插入語句會報1062錯誤:如Figure1所示;

(Figure1:Duplicate entry '1' for key 'PRIMARY')
但是在實際的生產環境中,需求往往是需要在UserId鍵值中設置唯一索引,今天我就以這個作為示例,進行唯一索引的測試:
新聞熱點
疑難解答