使用mysql数据库:
因为数据库主键增长到啦最大值,数据id达到了20亿,查询数据好像只有200万数据;
int字段:数据的范围在-2^31~2^31-1
2^31-1 = 2147483647
unsigend long int是无符号整数类型,能表示的整数范围是0~4294967295,即0~2^32-1。
主键自增到最大时候:
int有符号:
处理方案:
之前id的值是int,现在设计一个新的表,将新的表的id的类型为bigint 或者(将int有符号修改为无符号),然后将原来的数据copy到新表中,当copy完成后再将新表的表名修改为原来的表,原来的表名也修改下。
但是后台代码需要先更新,之前后台用的是Integer,不然的话插入就会报
数据的是正常插入没有问题,就是后台会有异常