我一直在寻找方法来收集有关MySql 8上的复制延迟的信息。我找到了一种替代解决方案,但我想有一种更简单的方法可以做到这一点。
通过阅读其reference manual,我发现我可以在performance_schema数据库中获得有用的信息。 当我查看从服务器上的表 replication_connection_status 时,我可以找到以下信息,以及其他信息:
但是它缺少有关何时在此从属服务器上提交事务的信息。
替代解决方案: 执行这些更新的复制,从从服务器到第三台服务器(它的主服务器是我们试图从中获取此信息的从服务器),然后在第三台服务器上查看列 LAST_QUEUED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP ,主Slave服务器已提交事务。
可能的解决方案: 表 events_transactions_history 可能包含事务结束的时间,但是时间格式令人困惑。 根据{{3}}:
计时器基线(“时间零”)出现在性能架构上 服务器启动期间进行初始化。 TIMER_START和TIMER_END值 事件中的值表示自基线以来的皮秒。 TIMER_WAIT值 持续时间以皮秒为单位。
我不知道如何确切知道这个“零时光”到底是什么,我们得到的只是它发生在服务器启动期间,但是我怎么能得到这个准确的时间呢?
当然,如果我错过了一个更简单的解决方案,请告诉我。
谢谢。