MySQL数据库自增主键的间隔不为1的解决方式

2022-12-31,

这篇文章主要介绍了MySQL数据库自增主键的间隔不为1的解决方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

目录
  • MySQL数据库自增主键的间隔不为1
    • fvt测试环境数据库配置
    • pr类生产环境数据库配置
  • SQL语句中的auto_increment=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.

以上为个人经验,希望能给大家一个参考,也希望大家多多支持北冥有鱼。

《MySQL数据库自增主键的间隔不为1的解决方式.doc》

下载本文的Word格式文档,以方便收藏与打印。