因此,我们刚刚从MySQL 5.7-ubuntu升级到8.0。升级似乎进行得很顺利,但是现在每次尝试插入时,我们都会收到“重复输入”错误。
调查显示,数据库(在所有表中)的所有AI(自动增量)值均设置为表中的 最后使用 ID,因此尝试在现有ID上插入。
我相信手动将AI值在每个表上都减一会解决此问题,但我对此感到好奇/担心,为什么会首先发生。这可能表明存在其他问题。
有人可以解释为什么会这样吗? (我尝试搜索此错误,但是有大量误报)
谢谢
答案 0 :(得分:1)
这个解释了它在5.7和8中的处理方式
InnoDB中的AUTO_INCREMENT处理
https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html