概述
本章,您将学习并管理 MySQL NDB Cluster 中的日志。
目前管理节点的 config.ini 文件内容未修改,如下所示:
Shell > vim /etc/mysql-cluster/config.ini
[ndbd default]
NoOfReplicas=2
DataMemory=98M
[ndb_mgmd]
HostName=192.168.100.10
DataDir=/var/log/mysql-cluster
[ndbd]
HostName=192.168.100.12
NodeId=2
DataDir=/usr/local/mysql/data
[ndbd]
HostName=192.168.100.14
NodeId=3
DataDir=/usr/local/mysql/data
[mysqld]
HostName=192.168.100.16
日志分类
在 MySQL NDB Cluster 中,日志(或称事件日志)被划分为了两个大类:
-
集群日志 - 包含了所有集群节点生成的事件。由于集群日志能在单一位置提供整个集群的日志信息,因此是大多数场景下推荐使用的日志类型。默认情况下,它被保存在管理服务器的数据目录中,文件命名为 ndb_node_id_cluster.log,其中 node_id 指管理节点的节点 ID
Shell (192.168.100.10)> ls -l /var/log/mysql-cluster/ 总用量 56 -rw-r--r-- 1 root root 41441 4月 13 19:42 ndb_1_cluster.log -rw-r--r-- 1 root root 68 4月 13 19:42 ndb_1_out.log -rw-r--r-- 1 root root 5 4月 13 19:42 ndb_1.pid -
节点日志 - 保存在每个数据服务器或 SQL 服务器上的的本地日志。默认情况下,保存在这些服务器的数据目录中,文件命名为 ndb_node_id_out.log,中 node_id 指 SQL 节点或数据节点的节点 ID。在应用程序开发期间以及需要调试应用程序的代码时,需要使用到节点日志。
每个被报告的事件可以根据三个不同标准进行区分(可通过这三个标准来过滤日志,相当于日志的筛选条件):
- 类别(Category) - STARTUP、SHUTDOWN、STATISTICS、CHECKPOINT、NODERESTART、CONNECTION、ERROR、INFO 的任意一个
- 优先级(Priority) - 通过 0~15 的其中一个数字来表示事件在集群内部的处理优先级,数值越小越紧急。0 表示最重要,15 表示最不重要
-
严重程度(Severity Level) - ON、DEBUG、INFO、WARNING、ERROR、CRITICAL、ALERT、ALL 的任意一个。不同的严重程度代表着当前集群环境的状态,由低到高依次是:
关键字 描述 DEBUG 基本调试消息 INFO 信息性消息 WARNING 警告类的消息,可能需要进行特殊处理 ERROR 错误类消息,比如配置文件的内容错误 CRITICAL 非常关键的消息,需要进行人工干预,比如设备故障或资源不足等 ALERT 应该立刻采取行动的消息,比如系统数据库损坏
小提示
在 Rsyslog 日志处理程序中,优先级(Priority)从低到高依此使用的关键字为
debug、info、notice、warning、err、crit、alert、emerg ,此处的优先级用来说明严重程度。在 Rsyslog 中,日志优先级越低,记录的内容越详细,严重性越低;日志优先级越高,记录的内容越少,问题越严重。Rsyslog 日志处理程序配置文件中的优先级(Priority)和 MySQL NDB Cluster 中日志的优先级(Priority)虽然都使用相同的英语单词,但所表达的含义不是一样的。读者不要混淆它们。日志的记录格式
无论是集群日志还是节点日志,每一行日志记录的标准格式是:
timestamp [node_type] level -- Node node_id: message
- 时间戳(timestamp) - 格式为 YYYY-MM-DD HH:MM:SS
- 节点类型(node_type) - 可以是 [MgmtSrvr]、[ndbd]、[NdbApi] 的其中一个
- 严重程度(level) - ON、DEBUG、INFO、WARNING、ERROR、CRITICAL、ALERT、ALL 的任意一个
- 节点 ID(-- Node node_id) - node_id 替换为具体的节点 ID
- 包含事件的描述信息(message)- 最常见的消息即集群中不同节点之间的连接或断开
192.168.100.10 管理服务器的集群日志内容示例:
Shell > tail -n 20 /var/log/mysql-cluster/ndb_1_cluster.log
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Start phase 9 completed (system restart)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Start phase 50 completed (system restart)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Start phase 50 completed (system restart)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Start phase 101 completed (system restart)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Start phase 101 completed (system restart)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Started (mysql-8.4.8 ndb-8.4.8)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Started (mysql-8.4.8 ndb-8.4.8)
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Node 1: API mysql-8.4.8 ndb-8.4.8
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Node 1: API mysql-8.4.8 ndb-8.4.8
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Prepare arbitrator node 1 [ticket=330200010003eb41]
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 3: Communication to Node 4 opened
2026-04-13 19:42:35 [MgmtSrvr] INFO -- Node 2: Started arbitrator node 1 [ticket=330200010003eb41]
2026-04-13 19:42:36 [MgmtSrvr] INFO -- Node 2: Communication to Node 4 opened
2026-04-13 19:42:47 [MgmtSrvr] INFO -- Alloc node id 4 succeeded
2026-04-13 19:42:47 [MgmtSrvr] INFO -- Nodeid 4 allocated for API at 192.168.100.16
2026-04-13 19:42:47 [MgmtSrvr] INFO -- Node 4: mysqld --server-id=1
2026-04-13 19:42:48 [MgmtSrvr] INFO -- Node 3: Node 4 Connected
2026-04-13 19:42:48 [MgmtSrvr] INFO -- Node 2: Node 4 Connected
2026-04-13 19:42:48 [MgmtSrvr] INFO -- Node 2: Node 4: API mysql-8.4.8 ndb-8.4.8
2026-04-13 19:42:48 [MgmtSrvr] INFO -- Node 3: Node 4: API mysql-8.4.8 ndb-8.4.8
管理服务器上有关日志的交互命令
在前面的文章 《MySQL Cluster篇04 — 管理节点的命令与选项》 中,介绍了管理节点常见的交互命令,下面说明的是有关集群日志的交互命令:
- clusterlog on - 打开集群日志
- clusterlog off - 关闭集群日志
- clusterlog info - 提供集群日志设置的信息
- node_id clusterlog categeory=level - 指定目标节点的节点 ID(指定全部节点则使用关键字 ALL),在集群日志中记录小于或等于优先级的类别日志。例如
2 clusterlog shutdown=3
小提示
在 ndb_mgm 的交互命令中,命令关键字忽略大小写。
数据节点上各类事件被记录在集群日志上,其类别与默认优先级如下表所示:
| 类别 | 默认优先级 |
|---|---|
| STARTUP | 7 |
| SHUTDOWN | 7 |
| STATISTICS | 7 |
| CHECKPOINT | 7 |
| NODERESTART | 7 |
| CONNECTION | 8 |
| ERROR | 15 |
| INFO | 7 |
| BACKUP | 15 |
| CONGESTION | 7 |
| SCHEMA | 7 |
版权声明:「自由转载-保持署名-非商业性使用-禁止演绎 3.0 国际」(CC BY-NC-ND 3.0)
用一杯咖啡支持我们,我们的每一篇[文档]都经过实际操作和精心打磨,而不是简单地从网上复制粘贴。期间投入了大量心血,只为能够真正帮助到您。
暂无评论








