MySQL 复制 (Replication) 中如何加入新节点

在 MySQL 的复制集群 (Replication Cluster)中,我们会需要加入新节点,或者修复损坏了的节点。这一过程也叫做 provisioning a node 或 seeding a node。如果 master 上的binlog保留了全部的操作,在数据量不大,或者对master slave的数据复制时间要求不高的情况下,可以直接让新节点从master复制。否则,我们需要先从master或某个已有的slave上备份出数据,并导入到新节点中,然后再建立复制关系。这一过程对于新的 Group Replication 依然适用,只是它的master slave角色是集群自己管理的,而不是手工设置的。

针对不同的情况,对于已有数据的导出导入可以采用物理文件的方式,也可以采用逻辑语句的方式。采用物理文件的方式效率更高,适合已有数据量特别大的情况,需要使用企业版本的工具比如 MySQL Enterprise Backup,或者 Percona 的免费的备份工具 XtraBackup,或者LVM的磁盘快照(可以参考 MySQL …

Continue Reading