Documentation Home

21.6.15.28 ndbinfo 节点表

该表包含有关数据节点状态的信息。对于集群中运行的每个数据节点,此表中的相应行提供节点的节点 ID、状态和正常运行时间。对于正在启动的节点,它还会显示当前的启动阶段。

nodes表包含以下列:

  • node_id

    数据节点在集群中的唯一节点 ID。

  • uptime

    自节点上次启动以来的时间,以秒为单位。

  • status

    数据节点的当前状态;有关可能的值,请参阅文本。

  • start_phase

    如果数据节点正在启动,则为当前启动阶段。

  • config_generation

    此数据节点上使用的集群配置文件的版本。

笔记

uptime列显示此节点自上次启动或重新启动以来一直在运行的时间(以秒为单位)。这是一个BIGINT 值。这个数字包括启动节点实际需要的时间;换句话说,这个计数器在第一次调用ndbdndbmtd时开始运行;因此,即使对于尚未完成启动的节点,也uptime可能显示非零值。

status列显示节点的当前状态。这是以下之一:NOTHING, CMVMI, STARTING, STARTED, SINGLEUSER, STOPPING_1, STOPPING_2, STOPPING_3, 或STOPPING_4。当状态为STARTING时,您可以在列中看到当前的开始阶段start_phase(请参阅本节后面)。SINGLEUSER当集群处于单用户模式时,显示在status所有数据节点的列中(请参阅 第 21.6.6 节,“NDB 集群单用户模式”)。看到其中一个STOPPINGstates 并不一定意味着节点正在关闭,而是意味着它正在进入一个新状态。例如,如果您将集群置于单用户模式,您有时会看到数据节点STOPPING_2在状态更改为之前简要报告它们的状态SINGLEUSER

该列使用的值范围与ndb_mgm客户端 命令 start_phase的输出中使用的值范围相同 (请参阅第 21.6.1 节,“NDB Cluster Management Client 中的命令”)。如果节点当前未启动,则此列显示 。有关带有描述的 NDB Cluster 启动阶段的列表,请参阅 第 21.6.4 节,“NDB Cluster 启动阶段摘要”node_id STATUS0

config_generation列显示哪个版本的集群配置对每个数据节点有效。这在执行集群的滚动重启以更改配置参数时非常有用。例如,从以下 SELECT语句的输出中,您可以看到节点 3 尚未使用最新版本的集群配置 ( 6),尽管节点 1、2 和 4 正在这样做:

mysql> USE ndbinfo;
Database changed
mysql> SELECT * FROM nodes;
+---------+--------+---------+-------------+-------------------+
| node_id | uptime | status  | start_phase | config_generation |
+---------+--------+---------+-------------+-------------------+
|       1 |  10462 | STARTED |           0 |                 6 |
|       2 |  10460 | STARTED |           0 |                 6 |
|       3 |  10457 | STARTED |           0 |                 5 |
|       4 |  10455 | STARTED |           0 |                 6 |
+---------+--------+---------+-------------+-------------------+
2 rows in set (0.04 sec)

因此,对于刚才的案例,你应该重启节点3来完成集群的滚动重启。

已停止的节点未计入此表中。假设你有一个 NDB Cluster 有 4 个数据节点(节点 ID 1、2、3 和 4),并且所有节点都正常运行,那么这个表包含 4 行,每个数据节点 1:

mysql> USE ndbinfo;
Database changed
mysql> SELECT * FROM nodes;
+---------+--------+---------+-------------+-------------------+
| node_id | uptime | status  | start_phase | config_generation |
+---------+--------+---------+-------------+-------------------+
|       1 |  11776 | STARTED |           0 |                 6 |
|       2 |  11774 | STARTED |           0 |                 6 |
|       3 |  11771 | STARTED |           0 |                 6 |
|       4 |  11769 | STARTED |           0 |                 6 |
+---------+--------+---------+-------------+-------------------+
4 rows in set (0.04 sec)

如果关闭其中一个节点,则只有仍在运行的节点会显示在此 SELECT语句的输出中,如下所示:

ndb_mgm> 2 STOP
Node 2: Node shutdown initiated
Node 2: Node shutdown completed.
Node 2 has shutdown.
mysql> SELECT * FROM nodes;
+---------+--------+---------+-------------+-------------------+
| node_id | uptime | status  | start_phase | config_generation |
+---------+--------+---------+-------------+-------------------+
|       1 |  11807 | STARTED |           0 |                 6 |
|       3 |  11802 | STARTED |           0 |                 6 |
|       4 |  11800 | STARTED |           0 |                 6 |
+---------+--------+---------+-------------+-------------------+
3 rows in set (0.02 sec)