2012/12/20某业务合服后在唯一索引键上出现了重复键现象:
mysql> select count(RoleGID) from RoleData_0;
+----------------+
| count(RoleGID) |
+----------------+
| 41255 |
+----------------+
1 row in set (0.00 sec)
mysql> select count(distinct RoleGID) from RoleData_0;
+-------------------------+
| count(distinct RoleGID) |
+-------------------------+
| 41123 |
+-------------------------+
1 row in set (0.00 sec)
【问题回顾】
【原因分析】
理论上,mysql会保证唯一索引上记录不会重复。
源码跟踪定位原因如下:
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