今天看啥  ›  专栏  ›  菜鸟教程

老板问:MySQL的自增 ID 用完了,怎么办?我感觉能用几千年!!!

菜鸟教程  · 公众号  ·  · 2024-05-29 11:28
    

文章预览

MySQL 自增 ID 一般用的数据类型是 INT 或 BIGINT,正常情况下这两种类型可以满足大多数应用的需求。 当然也有不正常的情况,当达到其最大值时,尝试插入新的记录会导致错误,错误信息类似于: ERROR  167  ( 22003 ): Out  of  range value  for  column  'id'  at row  1 下面我们就来看看  INT 或 BIGINT 到底能插入多少的数据。 1、INT  INT 类型占用 4 个字节,范围: -2,147,483,648 到 2,147,483,647 (如果是无符号类型,则范围是 0 到 4,294,967,295 ) 也就是说 INT 类型存储量将近可以达到 43 亿,看着数量,感觉可以存储很多条记录了,我们就来计算下: 一年 365 天 , 一天 24 小时 , 一小时 60 分钟 , 一分钟 60 秒 , 如果每秒钟存储 100 条记录看看能用多久: # INT 的最大值 max_int_value = 4294967295 # 每秒记录数 records_per_second = 100 # 每年的秒数 records_per_year = 365 * 24 * 60 * 60 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览