修改自增主键的自增值

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:V3.0.8
  • 【问题描述】:alter table 表名 AUTO_INCREMENT =100;并没有将自增值修改到100 ,而是随机的整数
1 个赞

TiDB 的自增主键和 MySQL 存在差异, TiDB 中各个 TiDB Server 缓存了一段 ID,默认为 30000 个。在进行 alter 时,需要从已缓存的最大的 ID 段来进行分配,比如 :

server A:[1,30000]

server B: [30001,60000]

那么在 alter 操作的时候即使指定了目标 ID,原则上会从 60001 开始

具体可以查看下述文档:

https://pingcap.com/docs-cn/stable/reference/mysql-compatibility/#自增-id

那我这个怎么会缓存的值会那么大?我建表后直接给我搞成了22111199291573,想改小都改不了。。。,那后面这点空间根本不够我用啊。

我建表指定的AUTO_INCREMENT=8565572,但是建表之后发现AUTO_INCREMENT的值是22111199291573。这也太夸张了,后面这点值空间很快会占满。

兄弟,你追问追错帖子了~回到你发的帖子去追问吧~

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。