server_transactions 表格是 cluster_transactions 表格的子集,但僅包含目前 SQL 節點 (MySQL Server) 為參與者的交易,並包含相關的連線 ID。
server_transactions 表格包含以下欄位:
mysql_connection_idMySQL Server 連線 ID
node_id交易協調器節點 ID
block_instance交易協調器區塊實例
transid交易 ID
state操作狀態 (請參閱文字以瞭解可能的值)
count_operations交易中具狀態的操作次數
outstanding_operations本地資料管理層 (LQH 區塊) 仍在執行的操作
inactive_seconds等待 API 的時間
client_node_id用戶端節點 ID
client_block_ref用戶端區塊參考
注意事項
mysql_connection_id 與 SHOW PROCESSLIST 輸出中顯示的連線或工作階段 ID 相同。 它從 INFORMATION_SCHEMA 表格 NDB_TRANSID_MYSQL_CONNECTION_MAP 取得。
block_instance 指的是核心區塊的實例。 此數字與區塊名稱一起使用,可用於在 threadblocks 表格中查找指定的實例。
交易 ID (transid) 是一個唯一的 64 位元數字,可使用 NDB API 的 getTransactionId() 方法取得。(目前,MySQL Server 不會公開正在進行的交易之 NDB API 交易 ID。)
state 欄位可以具有以下任何一個值:CS_ABORTING、CS_COMMITTING、CS_COMMIT_SENT、CS_COMPLETE_SENT、CS_COMPLETING、CS_CONNECTED、CS_DISCONNECTED、CS_FAIL_ABORTED、CS_FAIL_ABORTING、CS_FAIL_COMMITTED、CS_FAIL_COMMITTING、CS_FAIL_COMPLETED、CS_FAIL_PREPARED、CS_PREPARE_TO_COMMIT、CS_RECEIVING、CS_REC_COMMITTING、CS_RESTART、CS_SEND_FIRE_TRIG_REQ、CS_STARTED、CS_START_COMMITTING、CS_START_SCAN、CS_WAIT_ABORT_CONF、CS_WAIT_COMMIT_CONF、CS_WAIT_COMPLETE_CONF、CS_WAIT_FIRE_TRIG_REQ。(如果 MySQL Server 在啟用 ndbinfo_show_hidden 的情況下執行,您可以透過從 ndb$dbtc_apiconnect_state 表格 (通常為隱藏) 選擇來檢視此狀態清單。)
在 client_node_id 和 client_block_ref 中,client 指的是 NDB Cluster API 或 SQL 節點(也就是連接到叢集的 NDB API 用戶端或 MySQL Server)。
block_instance 欄位提供 DBTC 核心區塊實例編號。您可以使用它從 threadblocks 表格取得特定執行緒的相關資訊。