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  /  ...  /  MySQL Multi-Source Replication

19.1.5 MySQL 多源复制

MySQL 8.4 中的多源复制使得副本可以并行地从多个直接源接收事务。在多源复制拓扑结构中,副本为每个源创建一个复制通道,以便从该源接收事务。有关复制通道的信息,请参见第19.2.2节,“复制通道”

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

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

  • 合并表分片。

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

多源复制不实现任何冲突检测或解决方案,当应用事务时将留给应用程序处理。

Note

多源复制中的每个频道都必须从不同的源复制数据。您不能从同一个源设置多个复制频道到同一个复制服务器。这是因为复制服务器的ID必须在复制拓扑结构中唯一。源服务器只能通过复制服务器的ID来识别复制服务器,而不是通过复制频道的名称,因此无法识别来自同一个复制服务器的不同复制频道。

多源复制服务器也可以设置为多线程复制服务器,通过将系统变量replica_parallel_workers设置为大于0的值。当您在多源复制服务器上这样做时,每个频道都将有指定的并发线程数,plus 一个协调线程来管理它们。您不能为单个频道配置并发线程数。

MySQL 8.4还支持在多源复制服务器上使用特定频道的复制过滤器。可以在同一个数据库或表存在于多个源服务器上,并且您只需要复制服务器从一个源服务器复制它。对于基于GTID的复制,如果同一个事务可能来自多个源服务器(例如,在三角拓扑结构中),您必须确保所有频道上的过滤器设置相同。更多信息,请见第19.2.5.4节,“Replication Channel Based Filters”

本节提供了多源复制的配置、启动、停止和重置多源复制服务器的教程,以及多源复制的监控方法。