21.2.8 NDB 群集的安全关闭和重新启动

要关闭群集,请在托管 Management 节点的计算机上的 Shell 程序中 Importing 以下命令:

shell> ndb_mgm -e shutdown

此处的-e选项用于将命令从 Shell 传递给ndb_mgmClient 端。 (有关此选项的更多信息,请参见第 21.4.32 节“ NDB 群集程序的公用选项-NDB 群集程序的公用选项”。)该命令使ndb_mgmndb_mgmd和任何ndbdndbmtd进程正常终止。可以使用mysqladmin shutdown和其他方式终止任何 SQL 节点。在 Windows 平台上,假设您已将 SQL 节点安装为 Windows 服务,则可以使用 SC STOP * service_name *或 NET STOP * service_name *。

要在 Unix 平台上重新启动集群,请运行以下命令:

  • 在 Management 主机上(在我们的示例设置中为198.51.100.10):
shell> ndb_mgmd -f /var/lib/mysql-cluster/config.ini
  • 在每个数据节点主机(198.51.100.30198.51.100.40)上:
shell> ndbd
  • 使用ndb_mgmClient 端来验证两个数据节点都已成功启动。

  • 在 SQL 主机(198.51.100.20)上:

shell> mysqld_safe &

在 Windows 平台上,假定您已使用默认服务名称(请参见第 21.2.4.4 节“将 NDB 群集进程安装为 Windows 服务”)将所有 NDB 群集进程安装为 Windows 服务,则可以按以下方式重新启动群集:

  • 在 Management 主机(本例中为198.51.100.10)上,执行以下命令:
C:\> SC START ndb_mgmd
  • 在每个数据节点主机(198.51.100.30198.51.100.40)上,执行以下命令:
C:\> SC START ndbd
C:\> SC START mysql

在生产环境中,通常不希望完全关闭群集。在许多情况下,即使进行配置更改或对集群硬件或软件(或两者)进行升级,而这又需要关闭各个主机,也可以通过执行滚动操作而无需关闭整个集群,而这样做重新启动集群。有关执行此操作的更多信息,请参见第 21.5.5 节“执行 NDB 群集的滚动重启”