### 23.7.2 NDB 集群复制的一般要求

[](<>)[](<>)

复制通道需要两台 MySQL 服务器作为复制服务器（源和副本各一台）。例如，这意味着在具有两个复制通道（为冗余提供额外通道）的复制设置的情况下，应该总共有四个复制节点，每个集群两个。

本节中描述的 NDB Cluster 的复制以及以下内容依赖于基于行的复制。这意味着复制源 MySQL 服务器必须与[`--binlog-格式=行`](replication-options-binary-log.html#sysvar_binlog_format)要么[`--binlog-format=混合`](replication-options-binary-log.html#sysvar_binlog_format)，如中所述[第 23.7.6 节，“启动 NDB 集群复制（单复制通道）”](mysql-cluster-replication-starting.html).有关基于行的复制的一般信息，请参阅[第 17.2.1 节，“复制格式”](replication-formats.html).

重要的

如果您尝试将 NDB Cluster Replication 与[`--binlog-format=声明`](replication-options-binary-log.html#sysvar_binlog_format)，复制无法正常工作，因为`ndb_binlog_index`源集群上的表和`时代`的列`ndb_apply_status`副本集群上的表未更新（请参阅[第 23.7.4 节，“NDB 集群复制模式和表”](mysql-cluster-replication-schema.html)）。相反，只有充当复制源的 MySQL 服务器上的更新才会传播到副本，而不会复制来自源集群中任何其他 SQL 节点的更新。

的默认值[`--binlog 格式`](replication-options-binary-log.html#sysvar_binlog_format)选项是`混合`.

在任一集群中用于复制的每台 MySQL 服务器必须在参与任一集群的所有 MySQL 复制服务器中唯一标识（您不能在源集群和副本集群上拥有共享相同 ID 的复制服务器）。这可以通过使用启动每个 SQL 节点来完成`--server-id=*`id`*`选项，在哪里*`id`*是一个唯一的整数。尽管并非绝对必要，但出于讨论的目的，我们假设所有 NDB Cluster 二进制文件都具有相同的发布版本。

在 MySQL 复制中通常是这样的，两个 MySQL 服务器 ([**mysqld**](mysqld.html)所涉及的进程）必须在所使用的复制协议版本和它们支持的 SQL 功能集方面相互兼容（参见[第 17.5.2 节，“MySQL 版本之间的复制兼容性”](replication-compatibility.html)）。由于 NDB Cluster 和 MySQL Server 8.0 发行版中的二进制文件之间存在这种差异，NDB Cluster Replication 具有额外的要求，即两者[**mysqld**](mysqld.html)二进制文件来自 NDB Cluster 发行版。最简单和最简单的方法来确保[**mysqld**](mysqld.html)服务器兼容是对所有源和副本使用相同的 NDB Cluster 分布[**mysqld**](mysqld.html)二进制文件。

我们假设副本服务器或集群专用于源集群的复制，并且没有其他数据存储在其上。

[](<>)[](<>)

全部`新开发银行`被复制的表必须使用 MySQL 服务器和客户端创建。使用 NDB API 创建的表和其他数据库对象（例如，[`字典::createTable()`](https://dev.mysql.com/doc/ndbapi/en/ndb-dictionary.html#ndb-dictionary-createtable)) 对 MySQL 服务器不可见，因此不会被复制。可以复制 NDB API 应用程序对使用 MySQL 服务器创建的现有表的更新。

笔记

可以使用基于语句的复制来复制 NDB Cluster。但是，在这种情况下，适用以下限制：

-   对充当源的集群上的数据行的所有更新都必须定向到单个 MySQL 服务器。

-   使用多个同步 MySQL 复制进程来复制集群是不可能的。

-   仅复制在 SQL 级别所做的更改。

    这些是对基于语句的复制相对于基于行的复制的其他限制的补充；看[第 17.2.1.1 节，“基于语句和基于行的复制的优缺点”](replication-sbr-rbr.html), 有关两种复制格式之间差异的更具体信息。
