当备份后将新数据节点添加到 MySQL NDB Cluster 时,也可以执行部分恢复。--skip-nodeid
          在这种情况下,您可以在执行restore
          cluster命令时排除使用的新节点
          。
          考虑命名为以下命令
        mycluster输出中所示的 MySQL NDB Cluster
           :show status
mcm> show status -r mycluster;
+--------+----------+----------+---------+-----------+-----------+
| NodeId | Process  | Host     | Status  | Nodegroup | Package   |
+--------+----------+----------+---------+-----------+-----------+
| 49     | ndb_mgmd | tonfisk  | stopped |           | mypackage |
| 1      | ndbd     | tonfisk  | stopped | 0         | mypackage |
| 2      | ndbd     | tonfisk  | stopped | 0         | mypackage |
| 50     | mysqld   | tonfisk  | stopped |           | mypackage |
| 51     | mysqld   | tonfisk  | stopped |           | mypackage |
| 52     | ndbapi   | *tonfisk | added   |           |           |
| 53     | ndbapi   | *tonfisk | added   |           |           |
+--------+----------+----------+---------+-----------+-----------+
7 rows in set (0.03 sec)
          的输出list backups
          向我们展示了该集群的可用备份映像:
        
mcm> list backups mycluster;
+----------+--------+---------+---------------------+-------+---------+
| BackupId | NodeId | Host    | Timestamp           | Parts | Comment |
+----------+--------+---------+---------------------+-------+---------+
| 1        | 1      | tonfisk | 2020-12-04 12:03:52 | 1     |         |
| 1        | 2      | tonfisk | 2020-12-04 12:03:52 | 1     |         |
| 2        | 1      | tonfisk | 2020-12-04 12:04:15 | 1     |         |
| 2        | 2      | tonfisk | 2020-12-04 12:04:15 | 1     |         |
| 3        | 1      | tonfisk | 2020-12-04 12:17:41 | 1     |         |
| 3        | 2      | tonfisk | 2020-12-04 12:17:41 | 1     |         |
| 4        | 1      | tonfisk | 2020-12-12 14:24:35 | 1     |         |
| 4        | 2      | tonfisk | 2020-12-12 14:24:35 | 1     |         |
+----------+--------+---------+---------------------+-------+---------+
8 rows in set (0.06 sec)
          现在假设,在稍后的某个时间点,mycluster使用
          add process命令添加了 2 个数据节点。现在的
          show status输出
          mycluster如下所示:
        
mcm> show status -r mycluster;
+--------+----------+----------+---------+-----------+-----------+
| NodeId | Process  | Host     | Status  | Nodegroup | Package   |
+--------+----------+----------+---------+-----------+-----------+
| 49     | ndb_mgmd | tonfisk  | running |           | mypackage |
| 1      | ndbd     | tonfisk  | running | 0         | mypackage |
| 2      | ndbd     | tonfisk  | running | 0         | mypackage |
| 50     | mysqld   | tonfisk  | running |           | mypackage |
| 51     | mysqld   | tonfisk  | running |           | mypackage |
| 52     | ndbapi   | *tonfisk | added   |           |           |
| 53     | ndbapi   | *tonfisk | added   |           |           |
| 3      | ndbd     | tonfisk  | running | 1         | mypackage |
| 4      | ndbd     | tonfisk  | running | 1         | mypackage |
+--------+----------+----------+---------+-----------+-----------+
9 rows in set (0.01 sec)
          由于节点 3 和 4 未包含在备份中,因此我们需要在执行还原时将它们排除在外。您可以
          通过使用该
          选项restore cluster指定以逗号分隔的节点 ID 列表来跳过多个数据节点
          。--skip-nodeid假设我们刚刚
          使用mcm客户端命令
          清除mycluster了 MySQL NDB Cluster 数据
          ,
          如本节前面所述;然后我们可以
          从备份编号 4(当只有编号为 1 和 2 的 2 个数据节点
        时创建)恢复(现在有编号为 1、2、3 和 4 的 4
          个数据节点),如下所示:stop clusterstart cluster
          --initialmyclustermycluster
mcm> restore cluster --backupid=4 --skip-nodeid=3,4 mycluster;
+--------------------------------+
| Command result                 |
+--------------------------------+
| Restore completed successfully |
+--------------------------------+
1 row in set (17.61 sec)
          没有数据分发到跳过的(新)节点;您必须强制节点 3 和 4 包含在数据的重新分配中,
          ALTER
          ONLINE TABLE ... REORGANIZE PARTITION如本节前面所述。
        
          生成和运行这些
          ALTER
          ONLINE TABLE ... REORGANIZE PARTITION步骤的另一种方法是使用 NDB 表元数据的逻辑备份,它是 MySQL Cluster Manager 创建的集群备份的一部分。为此,在运行上述restore
          cluster步骤之前:
找到元数据的逻辑备份;有关说明,请参阅 第 4.6.2.5 节“将备份恢复到具有较少数据节点的集群”中的备份文件的 位置 。
恢复逻辑备份;有关说明,请参阅 第 4.6.2.5 节“将备份恢复到具有较少数据节点的集群”中 的恢复NDB 表元数据的逻辑备份 。
          然后您可以运行该restore
          cluster步骤,数据将在所有数据节点之间重新分配,无需进一步手动干预。