1
Infernalzero 2016-12-23 22:08:30 +08:00
原因你已经知道了, mysql 之所以默认这么做是为了性能,所以你要保证主键连续的话要么就把事务级别设置成序列化或者每次插入的时候显示锁表
|
2
klgd 2016-12-24 11:49:46 +08:00
```
CREATE TABLE `test` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `val` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ``` ``` insert into test (name,val) values ('123','222'),('qaz','qqq'),('1233','2221'),('q2azd','qqdaq'),('1dcwd23','22awd2'),('qaawd2z','qqv3dq'); ``` 执行了 2 次,从 1 自增到 12 ,没有发现你说的主键丢失问题,是我的操作方式不对吗? |
3
abcbuzhiming OP @klgd 我刚刚在 5.7.x 版本上测试确实发现这个 bug 没有了,很奇怪我记得 5.5 的时候我还测试过这个问题是存在的,难道真是 bug 。你的 mysql 是什么版本
|
4
klgd 2016-12-27 20:43:22 +08:00
@abcbuzhiming 是 5.5.53 的
|