文档主页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


25.6.17.48 ndbinfo 节点表

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

nodes 表包含以下列

  • node_id

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

  • uptime

    节点上次启动后运行的时间,以秒为单位。

  • status

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

  • start_phase

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

  • config_generation

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

备注

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

status 列显示节点的当前状态。这是以下之一: NOTHINGCMVMISTARTINGSTARTEDSINGLEUSERSTOPPING_1STOPPING_2STOPPING_3STOPPING_4。当状态为 STARTING 时,您可以在 start_phase 列中看到当前启动阶段(参见本节后面的内容)。当集群处于单用户模式时, SINGLEUSER 将在所有数据节点的 status 列中显示(参见 第 25.6.6 节,“NDB Cluster 单用户模式”)。看到其中一个 STOPPING 状态并不一定意味着节点正在关闭,而是可能意味着它正在进入一个新的状态。例如,如果您将集群置于单用户模式,您有时可能会看到数据节点短暂地将其状态报告为 STOPPING_2,然后状态更改为 SINGLEUSER

start_phase 列使用与 ndb_mgm 客户端 node_id STATUS 命令(参见 第 25.6.1 节,“NDB Cluster 管理客户端中的命令”)输出中使用的值范围相同。如果节点当前未启动,则此列显示 0。有关带说明的 NDB Cluster 启动阶段列表,请参见 第 25.6.4 节,“NDB Cluster 启动阶段摘要”

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 以完成集群的滚动重启。

已停止的节点不会在此表中列出。假设您有一个包含 4 个数据节点(节点 ID 为 1、2、3 和 4)的 NDB Cluster,并且所有节点都在正常运行,那么此表包含 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)