NDB 集群内部结构  /  NDB 内核模块  /  DBINFO 模块

4.6 DBINFO 模块

DBINFO 模块为用于获取有关数据节点内部信息的 ndbinfo 信息数据库提供支持。

API 节点使用 DBINFO_SCANREQDBINFO_SCANCONF 信号与该模块通信以检索 ndbinfo 数据。API 节点与主数据节点上的 DBINFO 进行通信,后者再与其余数据节点上的 DBINFO 进行通信。每个数据节点上的 DBINFO 模块从该节点上的其他内核模块获取信息,包括 DBACCDBTUPBACKUPDBTCSUMADBUTILTRIXDBTUXDBDICTCMVMIDBLQHLGMANPGMANDBSPJTHRMANTRPMANQMGR。然后,本地 DBINFO 将信息发送回主节点上的 DBINFO,后者再将其传递回 API 节点。

该模块在文件 storage/ndb/src/kernel/blocks/dbinfo/Dbinfo.hpp 中作为 Dbinfo 类实现。同一目录中的文件 Dbinfo.cpp 定义了此类的函数(主要是信号处理程序)。dbinfo 目录中还有一个文本文件 DbinfoScan.txt,其中提供了有关 DBINFO 消息传递的信息。