感谢 @wl21787 的分享:
背景
TiDB版本:V3.0.8
数据类型:bigint
在使用bigint数据类型时,不知其具体上限可以支持到多少,如果插入一个较大值会出现ERROR 1467 (HY000): Failed to read auto-increment value from storage engine。
测试
测试表
CREATE TABLE t(id bigint UNIQUE KEY AUTO_INCREMENT,a int not null default 0);
测试数据
insert into t(id) values(18446744073709551616);
ERROR 1467 (HY000): Failed to read auto-increment value from storage engine
其中18446744073709551616=2的64次方
truncate后继续测试
truncate table t;
因技术有限只能通过二分法进行不断测试,最终得到其最大值
mysql> insert into t(id) values(9223372036854775805);
Query OK, 1 row affected (0.01 sec)
mysql> insert into t values();
ERROR 1467 (HY000): Failed to read auto-increment value from storage engine
总结:bigint数据类型且为自增,其最大值为9223372036854775805。