server_transactions
表格是 cluster_transactions
表格的子集合,但僅包含目前 SQL 節點 (MySQL Server) 參與的交易,同時包含相關的連線 ID。
server_transactions
表格包含下列欄位
mysql_connection_id
MySQL 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 叢集 API 或 SQL 節點(也就是說,NDB API 用戶端或附加至叢集的 MySQL Server)。
block_instance
欄位提供 DBTC
核心區塊實例編號。您可以使用它從 threadblocks
表格中取得關於特定執行緒的資訊。