切换服务器后,SQL自动递增id随机跳转

时间:2015-02-26 05:56:30

标签: mysql sql pdo auto-increment

我在Godaddy上开发了我的网站,然后将其移至MediaTemple。执行此操作后,在此表上插入新条目时,自动增量ID不再以1为增量。在旧服务器上添加前十个条目,并且是1,2,3,4,5,6,7 ,8,9和10.将数据库移动到新服务器后,下一个id为55,然后是108,136,182和190.

这只发生在这一个表中,并且当通过php / pdo或phpmyadmin插入条目时发生。其他表仍然以1为增量添加ID。

以下是该表结构的一些截图。

drive.google.com/file/d/0B9Tpq5uOpTLFakt2N3JlYk9Lams/view?usp=sharing

drive.google.com/file/d/0B9Tpq5uOpTLFRW9DNlJUa2pld0k/view?usp=sharing

drive.google.com/file/d/0B9Tpq5uOpTLFOGdybXZHWTE5dE0/view?usp=sharing

2 个答案:

答案 0 :(得分:0)

如导出结构语法所示,auto_increment以某种方式设置为267。

我使用了查询...

ALTER TABLE table_name AUTO_INCREMENT=191

这解决了这个问题。 190id的最后191,因此267将成为下一个267。做了一些测试,它又回到了一个自动增量。我只能猜测,为了达到{{1}},ids正在大幅跳跃,并且在达到{{1}}后他们会回到1的增量。只是一个猜测。

感谢那些评论过的人。

答案 1 :(得分:0)

我了解您的@@auto_increment_increment值正在从某个地方发生变化。所以我的建议是请通过这个commad来检查,

SELECT @@auto_increment_increment;

如果它返回 1 那么它的罚款如果没有那么设置就好了,

SET @@auto_increment_increment=1;

您也可以在Mysql配置文件中查看它,前提是您有权访问该文件\mysql\bin\my.ini

您也可以通过

更改AUTO_INCREMENT的种子值
ALTER your_table AUTO_INCREMENT = 1;

谢谢。