相关文章推荐
拉风的绿豆  ·  迁移到 Azure MySQL ...·  1 月前    · 
焦虑的皮带  ·  在Linux ...·  1 月前    · 
有胆有识的泡面  ·  mySQL中怎么将dmp文件导入数据库开发者社区·  1 月前    · 
跑龙套的开水瓶  ·  MySql使用mysqldump ...·  1 月前    · 
坐怀不乱的小笼包  ·  Get-AzMariaDbConnectio ...·  4 周前    · 
深沉的莴苣  ·  汉语盘点:2019年十大网络用语发布 - ...·  4 月前    · 
爱笑的草稿本  ·  北投加賀屋【官網】住房最優惠【日勝生加賀屋國 ...·  5 月前    · 
胆小的风衣  ·  紫罗兰永恒花园 剧场版 - 荆楚之窗·  2 年前    · 
聪明伶俐的核桃  ·  (Visual Studio ...·  2 年前    · 
道上混的饭盒  ·  触发器—ArcGIS for ...·  2 年前    · 
Code  ›  【建议收藏】MySQL中的自增id超出上限的问题开发者社区
mysql
https://cloud.tencent.com/developer/article/2009820
爱健身的木瓜
2 年前
作者头像
码农编程进阶笔记
0 篇文章

【建议收藏】MySQL中的自增id超出上限的问题

前往专栏
腾讯云
备案 控制台
开发者社区
学习
实践
活动
专区
工具
TVP
文章/答案/技术大牛
写文章
社区首页 > 专栏 > 码农编程进阶笔记 > 正文

【建议收藏】MySQL中的自增id超出上限的问题

发布 于 2022-05-24 16:52:04
1.4K 0
举报

在mysql中有多种自增id,除了我们日常开发中经常使用的自增主键外,还有一些其他的自增id,主要是mysql内部为了辅助其正常运行而使用的。

这些自增id,都是定义了初始值,然后不停的累加步长。对于每一种自增id,在mysql中都会定义其数据类型,以及这个数据类型所占用的字节长度,也就是说每个自增id,都是有上限的,只不过上限的大小不尽相同而已,既然自增id有上限,那么就有可能被用完,那问题来了,如果自增id用完了,会发生什么呢?

在mysql中,对于不同的自增id值达到上限后,对应的处理方式是不同的。下面我们就对mysql中,几个比较重要的自增id进行分析一下。

为了方便下文描述,我们建立如下的表结构:

CREATE TABLE `increment_id_test` (
 `id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB;

一、自定义自增主键

自定义自增主键,是工作中最经常使用到的一种自增id,对于自增主键的一些细节问题可以参考你真的懂自增主键。

在表 increment_id_test 中,字段id是自增的,而且被定义成主键。id的数据类型为int,可表示的最大数值是2^32-1,也就是4294967295。为了能够让id字段快速达到这个上限,这里有两种方法:

1.直接插入一个id=4294967295 的数据行。

insert into increment_id_test values(4294967295);

2.设置autoincrement的值。

alter table increment_id_test auto_increment=4294967295;

当然也可以在建表的时候,就指定auto_increment的值为 4294967295。

两种方式的差异在于,设置auto_increment的方式,表示下次插入的数据行的id是 4294967295。

这里我们使用第一种方式做实验,相比第二种方式,可以减少一次数据插入,就可以让id达到上限。实验步骤如下:

1.插入一条id为 4294967295 的数据行


 
推荐文章
拉风的绿豆  ·  迁移到 Azure MySQL 数据库的已知问题 | Microsoft Learn
1 月前
焦虑的皮带  ·  在Linux ECS实例上手动安装MySQL数据库-云服务器 ECS-阿里云
1 月前
有胆有识的泡面  ·  mySQL中怎么将dmp文件导入数据库开发者社区
1 月前
跑龙套的开水瓶  ·  MySql使用mysqldump 导入与导出方法总结 - sucre_tan
1 月前
坐怀不乱的小笼包  ·  Get-AzMariaDbConnectionString (Az.MariaDb) | Microsoft Learn
4 周前
深沉的莴苣  ·  汉语盘点:2019年十大网络用语发布 - 中华人民共和国教育部政府门户网站
4 月前
爱笑的草稿本  ·  北投加賀屋【官網】住房最優惠【日勝生加賀屋國際溫泉飯店】
5 月前
胆小的风衣  ·  紫罗兰永恒花园 剧场版 - 荆楚之窗
2 年前
聪明伶俐的核桃  ·  (Visual Studio C++)#include<windows.h>报错:无法打开windows.h解决方案汇总_#include <windows.h>_Natuki丶的博客-CSDN博客
2 年前
道上混的饭盒  ·  触发器—ArcGIS for Microsoft 365 | 文档
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号