MySQL 8.4 Reference Manual Including MySQL NDB Cluster 8.4
This table contains information on the status of data nodes. For each data node that is running in the cluster, a corresponding row in this table provides the node's node ID, status, and uptime. For nodes that are starting, it also shows the current start phase.
The nodes
table contains the following
columns:
node_id
The data node's unique node ID in the cluster.
uptime
Time since the node was last started, in seconds.
status
Current status of the data node; see text for possible values.
start_phase
If the data node is starting, the current start phase.
config_generation
The version of the cluster configuration file in use on this data node.
The uptime
column shows the time in seconds
that this node has been running since it was last started or
restarted. This is a BIGINT
value. This figure includes the time actually needed to start
the node; in other words, this counter starts running the moment
that ndbd or ndbmtd is
first invoked; thus, even for a node that has not yet finished
starting, uptime
may show a nonzero value.
The status
column shows the node's
current status. This is one of: NOTHING
,
CMVMI
, STARTING
,
STARTED
, SINGLEUSER
,
STOPPING_1
, STOPPING_2
,
STOPPING_3
, or STOPPING_4
.
When the status is STARTING
, you can see the
current start phase in the start_phase
column
(see later in this section). SINGLEUSER
is
displayed in the status
column for all data
nodes when the cluster is in single user mode (see
Section 25.6.6, “NDB Cluster Single User Mode”). Seeing one of
the STOPPING
states does not necessarily mean
that the node is shutting down but can mean rather that it is
entering a new state. For example, if you put the cluster in
single user mode, you can sometimes see data nodes report their
state briefly as STOPPING_2
before the status
changes to SINGLEUSER
.
The start_phase
column uses the same range of
values as those used in the output of the
ndb_mgm client
command (see
Section 25.6.1, “Commands in the NDB Cluster Management Client”). If the
node is not currently starting, then this column shows
node_id
STATUS0
. For a listing of NDB Cluster start phases
with descriptions, see
Section 25.6.4, “Summary of NDB Cluster Start Phases”.
The config_generation
column shows which
version of the cluster configuration is in effect on each data
node. This can be useful when performing a rolling restart of
the cluster in order to make changes in configuration
parameters. For example, from the output of the following
SELECT
statement, you can see
that node 3 is not yet using the latest version of the cluster
configuration (6
) although nodes 1, 2, and 4
are doing so:
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)
Therefore, for the case just shown, you should restart node 3 to complete the rolling restart of the cluster.
Nodes that are stopped are not accounted for in this table. Suppose that you have an NDB Cluster with 4 data nodes (node IDs 1, 2, 3 and 4), and all nodes are running normally, then this table contains 4 rows, 1 for each data node:
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)
If you shut down one of the nodes, only the nodes that are still
running are represented in the output of this
SELECT
statement, as shown here:
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)