问题 - AUTO_INCREMENT TABLE_SCHEMA 中的值未更新

PROBLEM WITH - AUTO_INCREMENT VALUE IN TABLE_SCHEMA NOT UPDATING

场景

  1. 改变 TABLE {TABLE 名称} AUTO_INCREMENT = 1;

  2. 插入{TABLE名称}({COLUMN})值(1); (这只是自动增量更新后table中的记录)

  3. SELECT AUTO_INCREMENT 从 information_schema.TABLES 其中 TABLE_SCHEMA = {数据库名称} AND TABLE_NAME = {TABLE 姓名};

最后一个 select auto_increment 在步骤 1 中执行 alter table 之前返回旧值,我不明白为什么和热修复它或者可能改变 table 在步骤 1) 中重置 auto_increment.

的方法不正确

谢谢

PS。我知道一点,但不是全部。我正在研究这个问题,但没有找到 satisfactory/explanatory 答案。

我想你必须设置 AUTO_INCREMENT = 1 而不是 0

INFORMATION_SCHEMA 不会更新以反映最近的更改。 MySQL 8.0 更改为每 24 小时仅更新一次。

您可以这样设置:

SET GLOBAL information_schema_stats_expiry=0;

这将使 INFORMATION_SCHEMA 立即更新,但会增加系统开销。

我遇到了信息架构没有立即更新的问题。

为了解决这个问题,我 运行:

SET PERSIST information_schema_stats_expiry = 0;

因为使用 SET GLOBAL 对我不起作用。

希望这对其他人有帮助。