MySQL数据库自增主键的间隔不为1的解决方式
作者:老周聊架构
这篇文章主要介绍了MySQL数据库自增主键的间隔不为1的解决方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
MySQL数据库自增主键的间隔不为1
今天新版本上线的时候,遇到了一个这样的问题,测试fvt环境的自增主键ID是每隔一位顺序增加,而上到lp类生产的环境,每插入一条数据,发现自增主键ID是每隔2增加。
我首先想到的就是是不是类生产的环境的数据库的默认配置是每隔2的,带着这样的疑惑就来查看数据库不同环境的默认配置。
fvt测试环境数据库配置
pr类生产环境数据库配置
哈哈哈,被我猜中了。
下面就对auto_increment_increment
置成1
执行:
set @@global.auto_increment_increment = 1; set @@auto_increment_increment = 1;
如果:
auto_increment_offset = 2
执行:
set @@global.auto_increment_offset = 1; set @@auto_increment_offset = 1;
设置完成后,每次新增数据,自增主键都是增加1了。
举一反三,你想设置成2或者其他也是这样设置。
SQL语句中的auto_increment=1是什么意思?
auto_increment=1 这个是 修饰主键primary key,自动增长1.
举个简单例子
你的数据库记录有一条记录,stuid为1,当你添加一条记录时,department自动增加1,新增为2.
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。