MYSQL自动增量变得腐败

时间:2015-04-25 21:12:13

标签: php mysql auto-increment

出于某种原因,我遇到了一个问题,过了一段时间我的桌子变得“腐败”,我猜我在哪里得到这个错误:

mysql failed to read auto-increment value from storage engine

我已经找到了运行以下查询的解决方案:

ALTER TABLE `users`  AUTO_INCREMENT = 1

不好的部分是它在3周内随机发生了3次,而我没有改变表格中的任何内容。我发现的唯一原因是听到无法注册的用户:/

这是用于注册新用户的查询,因为您可以看到它显然没有插入user_id

INSERT INTO users (user_name, user_lastip, user_password_hash, user_email, user_activation_hash, user_registration_ip, user_registration_datetime) 
VALUES(:user_name, :user_lastip ,:user_password_hash, :user_email, :user_activation_hash, :user_registration_ip, now())

以下是我桌子的快速截图:

(在此开始发生之前我将user_ID长度设置为11,并且我上次发生此错误时尝试将其设置为255,但它没有帮助) table image

有谁知道造成这种情况的原因或如何解决这个问题?我显然不是唯一一个遇到这个问题的人,所以我希望有一个合乎逻辑的解释

1 个答案:

答案 0 :(得分:0)

检查autoincrement_offset。 尝试删除表,然后创建一个新表。