文档主页
MySQL 8.4 参考手册
相关文档 下载本手册

25.6.17.66 ndbinfo transporters 表

此表包含有关 NDB 传输器的信息。有关各个传输器的类似信息,请参阅 transporter_details 表。

transporters 表包含以下列:

  • node_id

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

  • remote_node_id

    远程数据节点的节点 ID

  • status

    连接状态

  • remote_address

    远程主机名或 IP 地址

  • bytes_sent

    使用此连接发送的字节数

  • bytes_received

    使用此连接接收的字节数

  • connect_count

    在此传输器上建立连接的次数

  • overloaded

    如果此传输器当前过载,则为 1,否则为 0

  • overload_count

    自连接以来,此传输器进入过载状态的次数

  • slowdown

    如果此传输器处于减速状态,则为 1,否则为 0

  • slowdown_count

    自连接以来,此传输器进入减速状态的次数

  • encrypted

    如果此传输器使用 TLS 连接,则此列为 1,否则为 0

注意

对于集群中每个正在运行的数据节点,transporters 表都会显示一行,显示该节点与集群中所有节点(包括其自身)的每个连接的状态。此信息显示在表的 status 列中,该列可以具有以下任意值:CONNECTINGCONNECTEDDISCONNECTINGDISCONNECTED

到已配置但当前未连接到集群的 API 和管理节点的连接显示为状态 DISCONNECTED。此表中不显示 node_id 为当前未连接的数据节点的那些行。(这类似于 ndbinfo.nodes 表中对已断开连接的节点的省略。

remote_address 是节点的主机名或地址,其 ID 显示在 remote_node_id 列中。此节点的 bytes_sent 和此节点的 bytes_received 分别是自建立连接以来使用此连接发送和接收的字节数。对于状态为 CONNECTINGDISCONNECTED 的节点,这些列始终显示 0

假设您有一个由 2 个数据节点、2 个 SQL 节点和 1 个管理节点组成的 5 节点集群,如 SHOW 命令在 ndb_mgm 客户端中的输出所示:

ndb_mgm> SHOW
Connected to Management Server at: localhost:1186 (using cleartext)
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=1    @10.100.10.1  (8.4.0-ndb-8.4.0, Nodegroup: 0, *)
id=2    @10.100.10.2  (8.4.0-ndb-8.4.0, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=10   @10.100.10.10  (8.4.0-ndb-8.4.0)

[mysqld(API)]   2 node(s)
id=20   @10.100.10.20  (8.4.0-ndb-8.4.0)
id=21   @10.100.10.21  (8.4.0-ndb-8.4.0)

transporters 表中有 10 行(第一个数据节点有 5 行,第二个数据节点有 5 行),假设所有数据节点都在运行,如下所示:

+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
| node_id | remote_node_id | status     | remote_address | bytes_sent | bytes_received | connect_count | overloaded | overload_count | slowdown | slowdown_count | encrypted |
+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
|       5 |              6 | CONNECTED  | 127.0.0.1      |   15509748 |       15558204 |             1 |          0 |              0 |        0 |              0 |         0 |
|       5 |             50 | CONNECTED  | 127.0.0.1      |    1058220 |         284316 |             1 |          0 |              0 |        0 |              0 |         0 |
|       5 |            100 | CONNECTED  | 127.0.0.1      |     574796 |         402208 |             1 |          0 |              0 |        0 |              0 |         0 |
|       5 |            101 | CONNECTING | -              |          0 |              0 |             0 |          0 |              0 |        0 |              0 |         0 |
|       6 |              5 | CONNECTED  | 127.0.0.1      |   15558204 |       15509748 |             1 |          0 |              0 |        0 |              0 |         0 |
|       6 |             50 | CONNECTED  | 127.0.0.1      |    1054548 |         283812 |             1 |          0 |              0 |        0 |              0 |         0 |
|       6 |            100 | CONNECTED  | 127.0.0.1      |     529948 |         397444 |             1 |          0 |              0 |        0 |              0 |         0 |
|       6 |            101 | CONNECTING | -              |          0 |              0 |             0 |          0 |              0 |        0 |              0 |         0 |
+---------+----------------+------------+----------------+------------+----------------+---------------+------------+----------------+----------+----------------+-----------+
mysql> SELECT node_id, remote_node_id, status
    ->   FROM ndbinfo.transporters;
+---------+----------------+---------------+
| node_id | remote_node_id | status        |
+---------+----------------+---------------+
|       1 |              1 | DISCONNECTED  |
|       1 |              2 | CONNECTED     |
|       1 |             10 | CONNECTED     |
|       1 |             20 | CONNECTED     |
|       1 |             21 | CONNECTED     |
|       2 |              1 | CONNECTED     |
|       2 |              2 | DISCONNECTED  |
|       2 |             10 | CONNECTED     |
|       2 |             20 | CONNECTED     |
|       2 |             21 | CONNECTED     |
+---------+----------------+---------------+
10 rows in set (0.04 sec)

如果您使用 ndb_mgm 客户端中的命令 2 STOP 关闭此集群中的一个数据节点,然后重复上一个查询(再次使用 mysql 客户端),则此表现在仅显示 5 行,每个剩余管理节点到另一个节点(包括其自身和当前脱机的数据节点)的每个连接显示 1 行,并为到当前脱机的数据节点的每个剩余连接的状态显示 CONNECTING,如下所示:

mysql> SELECT node_id, remote_node_id, status
    ->   FROM ndbinfo.transporters;
+---------+----------------+---------------+
| node_id | remote_node_id | status        |
+---------+----------------+---------------+
|       1 |              1 | DISCONNECTED  |
|       1 |              2 | CONNECTING    |
|       1 |             10 | CONNECTED     |
|       1 |             20 | CONNECTED     |
|       1 |             21 | CONNECTED     |
+---------+----------------+---------------+
5 rows in set (0.02 sec)

connect_countoverloadedoverload_countslowdownslowdown_count 计数器在连接时重置,并在远程节点断开连接后保留其值。bytes_sentbytes_received 计数器也在连接时重置,因此在断开连接后保留其值(直到下一个连接重置它们)。

当此传输器的发送缓冲区包含超过 OVerloadLimit 字节(默认值为 SendBufferMemory 的 80%,即 0.8 * 2097152 = 1677721 字节)时,就会出现 overloadedoverload_count 列所指的 过载 状态。当给定传输器处于过载状态时,任何尝试使用此传输器的新事务都会失败,并显示错误 1218(NDB 内核中的发送缓冲区过载)。这会影响扫描和主键操作。

当传输器的发送缓冲区包含超过过载限制的 60%(默认情况下等于 0.6 * 2097152 = 1258291 字节)时,就会出现此表的 slowdownslowdown_count 列所引用的 减速 状态。在这种状态下,任何使用此传输器的新扫描都会缩减其批处理大小,以最大程度地减少传输器上的负载。

发送缓冲区减速或过载的常见原因包括以下几点:

  • 数据大小,特别是 TEXT 列或 BLOB 列(或两种类型的列)中存储的数据量

  • 在与正在进行二进制日志记录的 SQL 节点相同的 hosts 上具有数据节点(ndbd 或 ndbmtd)

  • 每个事务或事务批处理的行数过多

  • 配置问题,例如 SendBufferMemory 不足

  • 硬件问题,例如 RAM 不足或网络连接不良

另请参阅 第 25.4.3.14 节“配置 NDB 集群发送缓冲区参数”

如果对连接使用 TLS,则 encrypted 列为 1,如下所示:

mysql> SELECT node_id, remote_node_id, status, encrypted 
    -> FROM ndbinfo.transporters;
+---------+----------------+------------+-----------+
| node_id | remote_node_id | status     | encrypted |
+---------+----------------+------------+-----------+
|       5 |              6 | CONNECTED  |         1 |
|       5 |             50 | CONNECTED  |         1 |
|       5 |            100 | CONNECTED  |         1 |
|       5 |            101 | CONNECTING |         0 |
|       6 |              5 | CONNECTED  |         1 |
|       6 |             50 | CONNECTED  |         1 |
|       6 |            100 | CONNECTED  |         1 |
|       6 |            101 | CONNECTING |         0 |
+---------+----------------+------------+-----------+
8 rows in set (0.04 sec)

否则,此列的值为 0

certificates 表可用于获取有关使用链路加密连接的每个节点的证书信息。

有关更多信息,请参阅 第 25.6.15 节“NDB 集群的 TLS 链路加密”