本节提供有关 MGM API 定义的数据结构的信息。
- 描述
此结构模拟集群日志事件,用于存储和检索日志事件信息。
定义。 ndb_logevent 有 8 个成员,前 7 个成员如下所示
void*:由handlendb_logevent_get_next()设置的NdbLogEventHandle。此句柄仅用于比较目的。type:指示这是哪种类型的事件(Ndb_logevent_type)。unsigned:日志事件在管理服务器中注册的时间。timecategory:日志事件类别(ndb_mgm_event_category)。severity:日志事件严重性(ndb_mgm_event_severity)。unsigned:日志事件级别。这是一个介于 0 到 15 之间的整数值(包括 0 和 15)。levelunsigned:报告此事件的节点的节点 ID。source_nodeid
此结构的第 8 个成员包含特定于日志事件的数据,具体取决于其类型。它被定义为多个数据结构的联合,每个结构对应于一种日志事件类型。使用哪个结构由 type 的值确定,如下表所示
表 3.7 Ndb_logevent_type 类型值和使用的结构
Ndb_logevent_type 值 |
结构 |
|---|---|
NDB_LE_Connected |
Connected:
|
NDB_LE_Disconnected |
Disconnected:
|
NDB_LE_CommunicationClosed |
CommunicationClosed:
|
NDB_LE_CommunicationOpened |
CommunicationOpened:
|
NDB_LE_ConnectedApiVersion |
ConnectedApiVersion:
|
NDB_LE_GlobalCheckpointStarted |
GlobalCheckpointStarted:
|
NDB_LE_GlobalCheckpointCompleted |
GlobalCheckpointCompleted:
|
NDB_LE_LocalCheckpointStarted |
LocalCheckpointStarted:
|
NDB_LE_LocalCheckpointCompleted |
LocalCheckpointCompleted:
|
NDB_LE_LCPStoppedInCalcKeepGci |
LCPStoppedInCalcKeepGci:
|
NDB_LE_LCPFragmentCompleted |
LCPFragmentCompleted:
|
NDB_LE_UndoLogBlocked |
UndoLogBlocked:
|
NDB_LE_NDBStartStarted |
NDBStartStarted:
|
NDB_LE_NDBStartCompleted |
NDBStartCompleted:
|
NDB_LE_STTORRYRecieved |
STTORRYRecieved:
|
NDB_LE_StartPhaseCompleted |
StartPhaseCompleted:
|
NDB_LE_CM_REGCONF |
CM_REGCONF:
|
NDB_LE_CM_REGREF |
CM_REGREF:
|
NDB_LE_FIND_NEIGHBOURS |
FIND_NEIGHBOURS:
|
NDB_LE_NDBStopStarted |
NDBStopStarted:
|
NDB_LE_NDBStopCompleted |
NDBStopCompleted:
|
NDB_LE_NDBStopForced |
NDBStopForced:
|
NDB_LE_NDBStopAborted |
NDBStopAborted:
|
NDB_LE_StartREDOLog |
StartREDOLog:
|
NDB_LE_StartLog |
StartLog:
|
NDB_LE_UNDORecordsExecuted |
UNDORecordsExecuted:
|
NDB_LE_NR_CopyDict |
NR_CopyDict:
|
NDB_LE_NR_CopyDistr |
NR_CopyDistr:
|
NDB_LE_NR_CopyFragsStarted |
NR_CopyFragsStarted:
|
NDB_LE_NR_CopyFragDone |
NR_CopyFragDone:
|
NDB_LE_NR_CopyFragsCompleted |
NR_CopyFragsCompleted:
|
NDB_LE_NodeFailCompleted |
NodeFailCompleted:(对于 block 和 completing_node,0 被解释为 “全部”。) |
NDB_LE_NODE_FAILREP |
NODE_FAILREP:
|
NDB_LE_ArbitState |
ArbitState:
|
NDB_LE_ArbitResult |
ArbitResult:
|
NDB_LE_GCP_TakeoverStarted |
GCP_TakeoverStarted:
|
NDB_LE_GCP_TakeoverCompleted |
GCP_TakeoverCompleted:
|
NDB_LE_LCP_TakeoverStarted |
LCP_TakeoverStarted:
|
NDB_LE_TransReportCounters |
TransReportCounters:
|
NDB_LE_OperationReportCounters |
OperationReportCounters:
|
NDB_LE_TableCreated |
TableCreated:
|
NDB_LE_JobStatistic |
JobStatistic:
|
NDB_LE_SendBytesStatistic |
SendBytesStatistic:
|
NDB_LE_ReceiveBytesStatistic |
ReceiveBytesStatistic:
|
NDB_LE_MemoryUsage |
MemoryUsage:
|
NDB_LE_TransporterError |
TransporterError:
|
NDB_LE_TransporterWarning |
TransporterWarning:
|
NDB_LE_MissedHeartbeat |
MissedHeartbeat:
|
NDB_LE_DeadDueToHeartbeat |
DeadDueToHeartbeat:
|
NDB_LE_WarningEvent |
WarningEvent:
|
NDB_LE_SentHeartbeat |
SentHeartbeat:
|
NDB_LE_CreateLogBytes |
CreateLogBytes:
|
NDB_LE_InfoEvent |
InfoEvent:
|
NDB_LE_EventBufferStatus (NDB 7.5 之前版本) |
EventBufferStatus:
|
NDB_LE_EventBufferStatus2 (NDB 7.5) |
EventBufferStatus2:
report_reason 是 NO_REPORT、COMPLETELY_BUFFERING、PARTIALLY_DISCARDING、COMPLETELY_DISCARDING、PARTIALLY_BUFFERING、BUFFERED_EPOCHS_OVER_THRESHOLD、ENOUGH_FREE_EVENTBUFFER 或 LOW_FREE_EVENTBUFFER 之一;有关这些值的描述,请参见 集群日志中的事件缓冲区报告 |
NDB_LE_BackupStarted |
BackupStarted:
|
NDB_LE_BackupFailedToStart |
BackupFailedToStart:
|
NDB_LE_BackupCompleted |
BackupCompleted:
|
NDB_LE_BackupAborted |
BackupAborted:
|
NDB_LE_SingleUser |
SingleUser:
|
NDB_LE_StartReport |
StartReport:
|
- 描述
提供有关集群节点状态的信息。
定义。 此结构包含以下成员
int:集群节点的节点 ID。node_id-
enum ndb_mgm_node_type:节点类型。node_type有关允许的值,请参见 ndb_mgm_node_type 类型。
-
enum ndb_mgm_node_status:节点的状态。node_status有关允许的值,请参见 ndb_mgm_node_status 类型。
-
int:启动阶段。start_phase仅当
node_type为NDB_MGM_NODE_TYPE_NDB且node_status为NDB_MGM_NODE_STATUS_STARTING时,此字段才有效。 -
int:用于心跳和主服务器接管的 ID。dynamic_id仅对数据(ndbd)节点有效。
-
int:节点所属的节点组。node_group仅对数据(ndbd)节点有效。
int:内部版本号。versionint:此节点连接到或断开与管理服务器的次数。connect_countchar:集群中其他节点看到的此节点的 IP 地址。connect_address[]int:MySQL 版本号,表示为整数(例如:mysql_version80200)。仅适用于 SQL 节点。int:当集群处于单用户模式时,具有独占访问权限的 API 或 SQL 节点的节点 ID。否则不适用。在 NDB 8.0 中添加。is_single_user
- 描述
提供有关集群节点状态的信息。
定义。 此结构包含以下成员
int:集群节点的节点 ID。node_id-
enum ndb_mgm_node_type:节点类型。node_type有关允许的值,请参见 ndb_mgm_node_type 类型。
-
enum ndb_mgm_node_status:节点的状态。node_status有关允许的值,请参见 ndb_mgm_node_status 类型。
-
int:启动阶段。start_phase仅当
node_type为NDB_MGM_NODE_TYPE_NDB且node_status为NDB_MGM_NODE_STATUS_STARTING时,此字段才有效。 -
int:用于心跳和主服务器接管的 ID。dynamic_id仅对数据(ndbd)节点有效。
-
int:节点所属的节点组。node_group仅对数据(ndbd)节点有效。
int:内部版本号。versionint:此节点连接到或断开与管理服务器的次数。connect_countint:MySQL 版本号,表示为整数(例如:mysql_version80200)。仅适用于 SQL 节点。int:当集群处于单用户模式时,具有独占访问权限的 API 或 SQL 节点的节点 ID。否则不适用。is_single_userchar:集群中其他节点看到的此节点的 IP 地址。connect_address[]
- 描述
提供有关所有集群节点状态的信息。此结构由
ndb_mgm_get_status()返回。
定义。 此结构有两个成员
int:no_of_nodesnode_states数组中的元素数。-
struct ndb_mgm_node_state:包含节点状态的数组。node_states[]此数组的每个元素都是一个
ndb_mgm_node_state结构。
请参见 ndb_mgm_get_status()。
- 描述
提供有关所有集群节点状态的信息。此结构由
ndb_mgm_get_status3()返回,并在 NDB 8.0 中添加。
定义。 此结构有两个成员
int:no_of_nodesnode_states数组中的元素数。-
struct ndb_mgm_node_state2:包含节点状态的数组。node_states[]此数组的每个元素都是一个
ndb_mgm_node_state2结构。
- 描述
包含来自管理服务器的响应信息,包括响应代码和对应的消息。
定义。 此结构包含两个成员,如下所示
-
int:对于成功的操作,此值为return_code0;否则,它包含一个错误代码。有关错误代码,请参见 ndb_mgm_error 类型。
char:包含响应或错误消息的文本。message[256]
请参阅 ndb_mgm_get_latest_error() 和 ndb_mgm_get_latest_error_msg()。