本節提供有關 MGM API 函式的資訊,這些函式用於從 NDB 叢集節點取得狀態資訊。
- 描述
此函式用於取得 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
)。
呼叫者必須釋放此函式傳回的指標。
- 簽名
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()
) 不同,當叢集使用 IPv6 定址時,ndb_mgm_get_status3()
可以運作。
呼叫者必須釋放此函式傳回的指標。
- 簽名
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
。引數
的陣列。其中第一個是要執行的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);