问题描述

mysql 我采用 id 自增生成策略,但是经过后端导入数据,刚插入的1-2条数据 id 生成正常,但是后面突然增大,导致id超出范围。

问题原因

首先排查数据库原因,我手动添加数据,看数据库默认分配自增 id 是否有问题。经过测试正常,说明可能是后端原因。

经过后端排查,发现是后端框架原因,后端框架默认给新插入数据分配的 id 导致。

解决方法

1、数据库修改恢复自增 id 默认值

使用下面语句重置自增id默认值,一定要把异常id删除,否则无法修改成功(遇到的一个坑)。

ALTER TABLE 【表名】 AUTO_INCREMENT = 【自增id初始值】

查询是否修改成功

SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_schema='【库名】' AND table_name='【表名】';

2、后端对框架进行配置,修改 id 生成逻辑为数据库分配

阅读原文

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐