Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  ...  /  MySQL Multi-Source Replication

19.1.5 MySQL 多源复制

在 MySQL 8.3 中,多源复制使副本可以从多个直接源并行接收事务。在多源复制拓扑结构中,副本为每个源创建一个复制通道,以便从中接收事务。有关复制通道的工作方式的更多信息,请参阅 第 19.2.2 节,“复制通道”

您可能选择实现多源复制以实现以下目标:

  • 将多个服务器备份到单个服务器。

  • 合并表分区。

  • 将多个服务器的数据合并到单个服务器。

多源复制不实施事务冲突检测或解决,因此这些任务将留给应用程序如果需要。

Note

每个多源副本上的每个通道必须从不同的源复制。您不能在同一个副本上设置多个复制通道到同一个源。这是因为副本的服务器 ID 在复制拓扑结构中必须是唯一的,源只能通过服务器 ID 区分副本,而不是通过复制通道的名称。

多源副本也可以设置为多线程副本,方法是将系统变量 replica_parallel_workers 设置为大于 0 的值。当您在多源副本上这样做时,每个通道上的副本将具有指定数量的应用程序线程,另外还有一个协调器线程来管理它们。您不能为个别通道配置应用程序线程的数量。

MySQL 8.3 还支持在多源副本上使用特定复制通道的复制过滤器。当同一个数据库或表出现在多个源上时,您只需要副本从一个源复制它。对于基于 GTID 的复制,如果同一事务可能来自多个源(例如在菱形拓扑结构中),您必须确保所有通道上的过滤器设置相同。有关更多信息,请参阅 第 19.2.5.4 节,“复制通道基于过滤器”

本节提供了关于如何配置多源复制的教程,包括如何配置源和副本、如何启动、停止和重置多源副本,以及如何监控多源复制。