快速批量重置Mysql主键自增

有的时候不同版本的数据同步,或者其它对数据库表的误操作会导致数据库表的自增基数异常

从而导致任何数据插入都会报错主键重复

Duplicate entry '' for key 'PRIMARY'

但是Mysql目前只提供了对单表的恢复主键自增

#重置单表主键自增的SQL脚本
alter table table_name auto_increment= 1;

如何实现批量的操作呢?

我们可以通过SQL生成批量的脚本,table_name替换成你的表名

#生成整个数据库所有表重置主键自增的SQL脚本
SELECT
 CONCAT( "alter table ", c.table_name, " auto_increment =1;" ) 
FROM
 (SELECT table_name FROM information_schema.TABLES WHERE table_schema = 'table_name')c 

然后再复制出来进行一个批量执行就好了

 至此大功告成

猜你喜欢

转载自blog.csdn.net/weixin_42559574/article/details/127551344