本节提供有关用于从 NDB 集群节点获取状态信息的 MGM API 函数的信息。
- 描述
该函数用于获取 NDB 集群中节点的状态。
调用者必须释放该函数返回的指针。
- 签名
struct ndb_mgm_cluster_state* ndb_mgm_get_status ( NdbMgmHandle handle )
- 参数
该函数接受一个参数,一个管理服务器
句柄
。- 返回值
指向
ndb_mgm_cluster_state
数据结构的指针。
- 描述
该函数与
ndb_mgm_get_status()
相似,因为它用于获取 NDB 集群中节点的状态。但是,ndb_mgm_get_status2()
允许指定要检查的节点类型。这些类型是ndb_mgm_node_type
值。该数组应以类型为NDB_MGM_NODE_TYPE_UNKNOWN
的元素结尾。
调用者必须释放该函数返回的指针。
- 签名
struct ndb_mgm_cluster_state* ndb_mgm_get_status2 ( NdbMgmHandle handle, const enum ndb_mgm_node_type types[] )
- 参数
-
该函数接受两个参数
一个管理服务器
句柄
指向要检查的节点类型的数组的指针。这些是
ndb_mgm_node_type
值。该数组应以类型为NDB_MGM_NODE_TYPE_UNKNOWN
的元素结尾。
- 返回值
指向
ndb_mgm_cluster_state
数据结构的指针。
- 描述
该函数与
ndb_mgm_get_status2()
相似,用于通过指定要检查的节点类型 (ndb_mgm_node_type
) 来获取 NDB 集群中节点的状态。与该函数(以及ndb_mgm_get_status()
)不同,ndb_mgm_get_status3()
在集群使用 IPv6 地址时有效。
调用者必须释放该函数返回的指针。
- 签名
struct ndb_mgm_cluster_state2 *ndb_mgm_get_status3 ( NdbMgmHandle handle, const enum ndb_mgm_node_type types[] );
- 参数
-
该函数接受两个参数
一个管理服务器
句柄
指向要检查的节点类型的数组的指针。这些是
ndb_mgm_node_type
值。该数组应以类型为NDB_MGM_NODE_TYPE_UNKNOWN
的元素结尾。
- 返回值
指向
ndb_mgm_cluster_state2
数据结构的指针。
- 描述
-
该函数可用于将调试信息转储到集群日志。NDB 集群管理客户端
DUMP
命令是该函数的包装器。ndb_mgm_dump_state()
与DUMP
命令一样,如果使用不当,可能会导致正在运行的 NDB 集群出现故障,甚至完全崩溃。在使用该函数之前,请务必查看相关文档。有关DUMP
命令的更多信息,以及当前DUMP
代码及其影响的列表,请参见 NDB 集群管理客户端 DUMP 命令。 - 签名
int ndb_mgm_dump_state ( NdbMgmHandle handle, int nodeId, const int* arguments, int numberOfArguments, struct ndb_mgm_reply* reply )
- 参数
-
该函数接受以下参数
一个管理服务器句柄 (
NdbMgmHandle
)集群数据节点的
nodeId
。一个
arguments
数组。第一个参数是将要执行的DUMP
代码。如果相应的DUMP
命令需要,则可以在该数组中传递后续参数。要传递的
numberOfArguments
。一个
ndb_mgm_reply
,其中包含返回值以及响应或错误消息。
- 返回值
0
表示成功;否则,表示错误代码。
示例。 以下示例与在管理客户端中运行 2 DUMP 1000
的结果相同
// [...]
#include <mgmapi_debug.h>
// [...]
struct ndb_mgm_reply reply;
int args[1];
int stat, arg_count, node_id;
args[0] = 1000;
arg_count = 1;
node_id = 2;
stat = ndb_mgm_dump_state(h, node_id, args, arg_count, &reply);