MySQL 8.4 发行说明
这些步骤假设您已使用 gtid_mode=ON
为源上的事务启用了 GTID,创建了复制用户,确保副本使用 TABLE
作为基于复制应用程序的元数据存储库,并根据需要使用来自源的数据准备了副本。
使用 CHANGE REPLICATION SOURCE TO
为副本上的每个源配置一个复制通道(请参阅 第 19.2.2 节,“复制通道”)。FOR CHANNEL
子句用于指定通道。对于基于 GTID 的复制,GTID 自动定位用于与源同步(请参阅 第 19.1.3.3 节,“GTID 自动定位”)。SOURCE_AUTO_POSITION
选项用于指定是否使用自动定位。
例如,要将 source1
和 source2
作为源添加到副本中,请使用 mysql 客户端在副本上两次发出该语句,如下所示
mysql> CHANGE REPLICATION SOURCE TO SOURCE_HOST="source1", SOURCE_USER="ted", \
SOURCE_PASSWORD="password", SOURCE_AUTO_POSITION=1 FOR CHANNEL "source_1";
mysql> CHANGE REPLICATION SOURCE TO SOURCE_HOST="source2", SOURCE_USER="ted", \
SOURCE_PASSWORD="password", SOURCE_AUTO_POSITION=1 FOR CHANNEL "source_2";
要使副本仅从 source1
复制数据库 db1
,仅从 source2
复制数据库 db2
,请使用 mysql 客户端为每个通道发出 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 语句”。