mysql修改主键为自增 ,如果自增达到最大值,新增加数据会怎样?
结论
它会停止递增,新增加的数据会报错
1、如果MySql设置主键默认int类型

id为int,占4个字节,每个字节8为,所以主键id的最大范围是-2^31 到 2^31-1即-2147483648到2147483647
2、主键设置无符号
无符号int: 范围(2^32)-1是0到4294967295
bigint的范围是:-2^63 到 2^63-1
3、navicat设计表,把主键改为最大值

4、插入数据,报错

5、主键自增到最大值了应该怎么办
此处参考文章:
https://blog.csdn.net/u013008898/article/details/116709305
1、主键类型修改为无符号int: int unsigned
Navicat修改类型为无符号,可以把主键扩大一倍

创建表的时候,设置为无符号
create table test_unsigned(a int unsigned, b int unsigned);
此时插入数据成功

2、主键类型修改为bigint

3、分表分库
相关推荐
-
MySQL进阶垫脚石:线程长时间处于killed状态怎么破?
MySQL进阶垫脚石:线程长时间处于killed状态怎么破?2025-04-30 01:10:02 -
「你真的知道吗?」Mysql中的DDL, DML, DCL, 和TCL介绍
「你真的知道吗?」Mysql中的DDL, DML, DCL, 和TCL介绍2025-04-30 00:52:57 -
PHP页面跳转2025-04-30 00:44:40
-
php调用自己的方法报错5002025-04-30 00:16:34
-
MYSQL常用查询Columns和Views2025-04-30 00:14:51