mysql 自增ID用完了怎么办

MYSQL

mysql 自增ID用完了怎么办

Thinyint 类型,最大值为127,及插入超过自增ID最大值时,会报

创建数据库,指定主键 自增ID,并将自增ID初始值设为 126

alter table tableName AUTO_INCREMENT=126;

添加数据,当ID变为127时,再次添加数据会报主键冲突的错误。

图片说明

如果不显示声明主键

InnoDB会自动创建一个不可见的、长度为6字节的 row_id,并且所有未定义主键的表都共用同一个row_id,每次自增时都是这个全局row_id自增。

该全局row_id使用的是 bigint unsigned类型,但实际只使用了6个字节,最大值为2的48幂-1。这时再插入,row_id的低48位全是0,拿到的row_id就是0,存在主键冲突的可能。

#360公司#
殇央的小屋 文章被收录于专栏

全部评论
mysql
1 回复
分享
发布于 2021-11-04 14:52

相关推荐

点赞 评论 收藏
转发
1 6 评论
分享
牛客网
牛客企业服务