#### 23.6.8.5 使用并行数据节点进行 NDB 备份

在 NDB 8.0 中，可以使用多个本地数据管理器 (LDM) 在数据节点上并行执行备份。为此，集群中的所有数据节点必须使用多个 LDM，并且每个数据节点必须使用相同数量的 LDM。这意味着所有数据节点都必须运行[**ndbmtd**](mysql-cluster-programs-ndbmtd.html)([**ndbd**](mysql-cluster-programs-ndbd.html)是单线程的，因此总是只有一个 LDM），并且在进行备份之前必须将它们配置为使用多个 LDM；[**ndbmtd**](mysql-cluster-programs-ndbmtd.html)默认情况下以单线程模式运行。您可以通过为多线程数据节点配置参数之一选择适当的设置，使他们使用多个 LDM[`MaxNoOfExecutionThreads`](mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-maxnoofexecutionthreads)要么[`线程配置`](mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-threadconfig).请记住，更改这些参数需要重新启动集群；这可以是滚动重启。除此之外[`启用多线程备份`](mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-enablemultithreadedbackup)每个数据节点的参数必须设置为 1（这是默认值）。

根据 LDM 的数量和其他因素，您可能还需要增加[`NoOfFragmentLogParts`](mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-nooffragmentlogparts).如果您使用的是大型 Disk Data 表，您可能还需要增加[`磁盘页面缓冲区内存`](mysql-cluster-ndbd-definition.html#ndbparam-ndbd-diskpagebuffermemory).与单线程备份一样，您可能还希望或需要对设置进行调整[`备份数据缓冲区大小`](mysql-cluster-ndbd-definition.html#ndbparam-ndbd-backupdatabuffersize),[`备份内存`](mysql-cluster-ndbd-definition.html#ndbparam-ndbd-backupmemory)，以及与备份相关的其他配置参数（请参阅[备份参数](mysql-cluster-ndbd-definition.html#mysql-cluster-backup-parameters)）。

一旦所有数据节点都使用多个 LDM，您可以使用[`开始备份`](mysql-cluster-backup-using-management-client.html)NDB 管理客户端中的命令，就像数据节点正在运行一样[**ndbd**](mysql-cluster-programs-ndbd.html)（要么[**ndbmtd**](mysql-cluster-programs-ndbmtd.html)在单线程模式下）；不需要额外的或特殊的语法，您可以根据需要或需要以任意组合指定备份 ID、等待选项或快照选项。

使用多个 LDM 的备份会在目录下创建子目录，每个 LDM 一个`备份/备份-*`备份 ID`*/`（这反过来又驻留在[`备份数据目录`](mysql-cluster-ndbd-definition.html#ndbparam-ndbd-backupdatadir)) 在每个数据节点上；这些子目录被命名`备份-*`备份 ID`*-第 1 部分-OF-*`ñ`*/`,`备份-*`备份 ID`*-第 2 部分-OF-*`ñ`*/`，依此类推，直到`备份-*`备份 ID`*-部分-*`ñ`*-的-*`ñ`*/`， 在哪里*`备份 ID`*是用于此备份的备份 ID，并且*`ñ`*是每个数据节点的 LDM 数量。这些子目录中的每一个都包含常用的备份文件`备份-*`备份 ID`*-0.*`node_id`*。数据`,`备份-*`备份 ID`*.*`node_id`*.ctl`， 和`备份-backup_id.node_id.log`， 在哪里*`node_id`*是该数据节点的节点 ID。

[**数据库\_恢复**](mysql-cluster-programs-ndb-restore.html)自动检查刚刚描述的子目录是否存在；如果找到它们，它会尝试并行恢复备份。有关还原使用多个 LDM 进行的备份的信息，请参阅[第 23.5.23.3 节，“从并行备份中恢复”](ndb-restore-parallel-data-node-backup.html).

强制创建可以通过以下方式轻松导入的单线程备份[**数据库\_恢复**](mysql-cluster-programs-ndb-restore.html)从 8.0 之前的 NDB 版本，您可以设置[`启用多线程备份 = 0`](mysql-cluster-ndbd-definition.html#ndbparam-ndbmtd-enablemultithreadedbackup)对于所有数据节点（您可以通过在`[ndbd 默认]`的部分`配置文件`全局配置文件）。也可以将并行备份恢复到运行旧版本`新开发银行`.看[第 23.5.23.1.1 节，“将 NDB 备份恢复到 NDB Cluster 的先前版本”](ndb-restore-to-different-version.html#ndb-restore-to-previous-version)， 了解更多信息。
