Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  Verifying Replication of Anonymous Transactions

19.1.4.4 验证匿名事务的复制

本节解释了如何监控复制拓扑结构并验证所有匿名事务已经被复制。这对于在线更改复制模式非常有帮助,因为可以验证是否安全地更改到GTID事务。

有多种方法可以等待事务复制:

最简单的方法,无论拓扑结构如何,但需要时间是:如果您确定复制服务器从不延迟超过N秒,请等待任何长于N秒的时间,您认为安全的时间。

更安全的方法,是指不依赖时间,如果您只有一个源和一个或多个副本,可以执行以下两个步骤:

  1. 在源服务器上执行以下语句:

    SHOW BINARY LOG STATUS;

    记下输出中的FilePosition列的值。

  2. 在每个副本上,使用源服务器的文件和位置信息执行以下语句:

    SELECT SOURCE_POS_WAIT(file, position);

如果您有一个源服务器和多个级别的副本(即副本的副本),重复第二步骤,从源服务器开始,然后在所有副本上执行,然后在这些副本的副本上执行,以此类推。

如果您使用了环形复制拓扑结构,其中多个服务器可能有写客户端,执行第二步骤,以便在每个源-副本连接上执行,直到完成整个循环。重复这个过程,以便完成整个循环两次。

例如,如果有三个服务器A、B和C,形成环形复制拓扑结构,A复制到B,B复制到C,C复制到A,执行以下步骤:

  • 在A上执行第一个步骤,在B上执行第二个步骤。

  • 在B上执行第一个步骤,在C上执行第二个步骤。

  • 在C上执行第一个步骤,在A上执行第二个步骤。

  • 在A上执行第一个步骤,在B上执行第二个步骤。

  • 在B上执行第一个步骤,在C上执行第二个步骤。

  • 在C上执行第一个步骤,在A上执行第二个步骤。