MySQL:8028(含)以下 checksum table 不一致的问题

作者简介:高鹏,笔名八怪。《深入理解MySQL主从原理》图书作者,同时运营个人公众号“MySQL学习”,持续分享遇到的有趣case以及代码解析!

最近遇到不少的案例,其中一个比较有意思的checksum table在8028(含)以下出现instant列会导致checksum table不一致的问题,因为日常校验数据的时候经常使用checksum table进行校验,感觉问题比较严重,就稍微看了下,现记录如下。

触发方式

这个触发方式很简单(8023/8028测试),如下:

<code>mysql&gt; create table i1(id int); Query OK, 0 rows affected (0.07 sec) mysql&gt; alter table i1 add name varchar(20); Query OK, 0 rows affected (0.06 sec) Records: 0  Duplicates: 0  Warnings: 0 mysql&gt; create table i2 like i1; Query OK, 0 rows affected (0.04 sec) mysql&gt; insert into i1 values(1,'g'); Query OK, 1 row affected (0.00 sec) mysql&gt; insert into i2 values(1,'g'); Query OK, 1 row affected (0.01 sec) mysql&gt; checksum table i1; +-------------+------------+ | Table       | Checksum   | +-------------+------------+ | test1227.i1 | 1843999801 | +-------------+------------+ 1 row in set (0.00 sec) mysql&gt; checksum table i2; +-------------+------------+ | Table       | Checksum   | +-------------+------------+ | test1227.i2 | 1025811850 | +-------------+------------+ 1 row in set (0.00 sec)