Documentation Home
MySQL 外壳 8.0  / 第 9 章 MySQL InnoDB 副本集  / 9.4 添加实例到 ReplicaSet  /  9.4.1 为 InnoDB ReplicaSet 提供实例

9.4.1 为 InnoDB ReplicaSet 提供实例

当您将新实例添加到 InnoDB ReplicaSet 时,您需要为实例提供 ReplicaSet 包含的现有数据。您可以使用以下方法之一自动执行此配置:

  • MySQL 克隆:从在线实例获取快照,然后用快照替换新实例上的任何数据。MySQL Clone 非常适合将新的空白实例加入 InnoDB ReplicaSet。MySQL Clone 不依赖于 InnoDB ReplicaSet 应用的所有事务的完整二进制日志。

    警告

    当您添加一个实例时,MySQL Clone 操作会销毁该实例之前的所有数据。

  • 增量恢复:依靠 MySQL 复制在新实例上应用所有丢失的事务。如果新实例上只缺少少数事务,则增量恢复是最快的方法。但是,只有至少一个在线的InnoDB ReplicaSet实例有一个完整的二进制日志,它包含了InnoDB ReplicaSet的整个事务历史,你才能使用这种方法。

    您不能使用此方法:

    • 如果您已清除所有成员的二进制日志。

    • 如果在实例中已存在数据库后启用二进制日志。

    如果您有许多事务要应用,在实例可以加入 InnoDB ReplicaSet 之前可能会有相当长的延迟。

当实例加入 ReplicaSet 时,恢复的使用方式与在 InnoDB Cluster 中的使用方式大致相同。MySQL Shell 会尝试自动选择合适的恢复方法。如果无法安全地选择方法,MySQL Shell 会提示使用什么。有关详细信息,请参阅 第 7.4.6 节,“将 MySQL 克隆与 InnoDB Cluster 一起使用”。本节介绍将实例添加到 ReplicaSet 时的差异。