MySQL 8.4 Release Notes
19.1.5.4 添加基于二进制日志的多源复制源到多源复制副本
这些步骤假设源服务器已经启用了二进制日志记录(这是默认情况),副本使用了基于表的复制应用程序元数据存储库(这是MySQL 8.4中的默认情况),并且您已经启用了复制用户,并记录了当前的二进制日志文件名和位置。
使用CHANGE REPLICATION SOURCE TO
语句为每个源配置复制通道(请参见第19.2.2节,“复制通道”)。使用FOR CHANNEL
子句指定通道。例如,要将source1
和source2
添加到副本中,请使用mysql客户端在副本上两次执行语句,如下所示:
mysql> CHANGE REPLICATION SOURCE TO SOURCE_HOST="source1", SOURCE_USER="ted", SOURCE_PASSWORD="password", \
SOURCE_LOG_FILE='source1-bin.000006', SOURCE_LOG_POS=628 FOR CHANNEL "source_1";
mysql> CHANGE REPLICATION SOURCE TO SOURCE_HOST="source2", SOURCE_USER="ted", SOURCE_PASSWORD="password", \
SOURCE_LOG_FILE='source2-bin.000018', SOURCE_LOG_POS=104 FOR CHANNEL "source_2";
要使副本从source1
复制数据库db1
,并从source2
复制数据库db2mysql客户端在副本上执行
CHANGE REPLICATION FILTER
语句,如下所示:
mysql> CHANGE REPLICATION FILTER REPLICATE_WILD_DO_TABLE = ('db1.%') FOR CHANNEL "source_1";
mysql> CHANGE REPLICATION FILTER REPLICATE_WILD_DO_TABLE = ('db2.%') FOR CHANNEL "source_2";
要了解
CHANGE REPLICATION FILTER
语句的完整语法和其他可用选项,请参见第15.4.2.1节,“CHANGE REPLICATION FILTER 语句”。