如何检查MySQL是否在GTID模式下运行?

问题描述:

在MySQL-5.7中,我们使用GTID和传统方法来设置MySQL复制。如何检查MySQL是否在GTID模式下运行?

我们也有一个新的参数:

gtid_mode = ON_PERMISSIVE

这意味着我们可以使GTID而且还能够在传统的方式运行复制。

现在我们启用了MySQL复制,但我们如何检查mysql复制是通过GTID还是传统进行工作?

感谢

+0

你能检查'gtid_executed'吗?这应该包含'GTID'事务的完整日志。请参阅:https://dev.mysql.com/doc/refman/5.7/en/replication-options-gtids.html – RealCheeseLord

从MySQL Documentation

gtid_mode=OFF_PERMISSIVE然后新的交易,同时允许复制的事务是要么GTID或匿名交易匿名。当同时允许复制的事务是要么GTID或匿名交易

这意味着gtid_mode = ON PERMISSIVE允许有,虽然新的交易正在与GTID进行匿名复制(传统方式)交易gtid_mode=ON_PERMISSIVE然后新的交易使用GTIDs,这就是为什么新版本允许使用GTID或匿名复制进行拓扑。

这将帮助你与你的要求:在不使用GTID交易时

字段显示单个GTID,如在replication_applier_status_by_worker性能架构表CURRENT_TRANSACTION,现在显示匿名。

Regards