启动MySQL 5.7.6时,mysql.gtid_executed应该跟踪所有已执行的gtids。
但是,在MySQL 5.7.14中,我看到了如下所示的场景:
mysql> select @@global.gtid_executed;
+-----------------------------------------------------------------------+
| @@global.gtid_executed |
+-----------------------------------------------------------------------+
| cd5cd102-6586-0742-6f26-5b4c4c17d44d:4294967296:8589934592-8589939092 |
+-----------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> select * from mysql.gtid_executed;
Empty set (0.00 sec)这种差异可以解释吗?
发布于 2017-04-17 00:11:02
mysql.gtid_executed是一个内部表,用于支持某些特定的用例;它不打算像@@global.gtid_executed那样被监视/使用(以及其他访问它的方法,比如performance_schema.global_variables)。
它只在特定的时间更新,这就是你所看到的。您可以阅读更多关于它的这里。
发布于 2021-08-26 12:41:39
表mysql.gtid_executed的内容不是实时更新的,而是在某些情况下才更新的,比如mysql的停止或二进制日志文件被旋转时。
https://dba.stackexchange.com/questions/171135
复制相似问题