select * from information_schema.innodb_trx;
trx_id:唯一事務id號,只讀事務和非鎖事務是不會創建id的。
TRX_WEIGHT:事務的高度,代表修改的行數(不一定準確)和被事務鎖住的行數。為了解決死鎖,innodb會選擇一個高度最小的事務來當做犧牲品進行回滾。已經被更改的非交易型表的事務權重比其他事務高,即使改變的行和鎖住的行比其他事務低。
TRX_STATE:事務的執行狀態,值一般分為:RUNNING, LOCK WAIT, ROLLING BACK, and COMMITTING.
TRX_STARTED:事務的開始時間
TRX_REQUESTED_LOCK_ID:如果trx_state是lockwait,顯示事務當前等待鎖的id,不是則為空。想要獲取鎖的信息,根據該lock_id,以innodb_locks表中lock_id列匹配條件進行查詢,獲取相關信息。
TRX_WAIT_STARTED:如果trx_state是lockwait,該值代表事務開始等待鎖的時間;否則為空。
TRX_MYSQL_THREAD_ID:mysql線程id。想要獲取該線程的信息,根據該thread_id,以INFORMATION_SCHEMA.PROCESSLIST表的id列為匹配條件進行查詢。
TRX_QUERY:事務正在執行的sql語句。
TRX_OPERATION_STATE:事務當前的操作狀態,沒有則為空。
TRX_TABLES_IN_USE:事務在處理當前sql語句使用innodb引擎表的數量。
TRX_TABLES_LOCKED:當前sql語句有行鎖的innodb表的數量。(因為只是行鎖,不是表鎖,表仍然可以被多個事務讀和寫)
TRX_LOCK_STRUCTS:事務保留鎖的數量。
TRX_LOCK_MEMORY_BYTES:在內存中事務索結構占得空間大小。
TRX_ROWS_LOCKED:事務行鎖最準確的數量。這個值可能包括對于事務在物理上存在,實際不可見的刪除標記的行。
TRX_ROWS_MODIFIED:事務修改和插入的行數
TRX_CONCURRENCY_TICKETS:該值代表當前事務在被清掉之前可以多少工作,由 innodb_concurrency_tickets系統變量值指定。
TRX_ISOLATION_LEVEL:事務隔離等級。
TRX_UNIQUE_CHECKS:當前事務唯一性檢查啟用還是禁用。當批量數據導入時,這個參數是關閉的。
TRX_FOREIGN_KEY_CHECKS:當前事務的外鍵堅持是啟用還是禁用。當批量數據導入時,這個參數是關閉的。
TRX_LAST_FOREIGN_KEY_ERROR:最新一個外鍵錯誤信息,沒有則為空。
TRX_ADAPTIVE_HASH_LATCHED:自適應哈希索引是否被當前事務阻塞。當自適應哈希索引查找系統分區,一個單獨的事務不會阻塞全部的自適應hash索引。自適應hash索引分區通過 innodb_adaptive_hash_index_parts參數控制,默認值為8。
TRX_ADAPTIVE_HASH_TIMEOUT:是否為了自適應hash索引立即放棄查詢鎖,或者通過調用mysql函數保留它。當沒有自適應hash索引沖突,該值為0并且語句保持鎖直到結束。在沖突過程中,該值被計數為0,每句查詢完之后立即釋放門閂。當自適應hash索引查詢系統被分區(由 innodb_adaptive_hash_index_parts參數控制),值保持為0。
TRX_IS_READ_ONLY:值為1表示事務是read only。
TRX_AUTOCOMMIT_NON_LOCKING:值為1表示事務是一個select語句,該語句沒有使用for update或者shared mode鎖,并且執行開啟了autocommit,因此事務只包含一個語句。當TRX_AUTOCOMMIT_NON_LOCKING和TRX_IS_READ_ONLY同時為1,innodb通過降低事務開銷和改變表數據庫來優化事務。
select * from information_schema.INNODB_LOCKS;
lock_id:鎖 ID。 lock_trx_id:擁有鎖的事務 ID。可以和 INNODB_TRX 表 JOIN 得到事務的詳細信息。 lock_mode:鎖的模式。有如下鎖類型:行級鎖包括:S、X、IS、IX,分別代表:共享鎖、排它鎖、意向共享鎖、意向排它鎖。表級鎖包括:S_GAP、X_GAP、IS_GAP、IX_GAP 和 AUTO_INC,分別代表共享間隙鎖、排它間隙鎖、意向共享間隙鎖、意向排它間隙鎖和自動遞增鎖。 lock_type:鎖的類型。RECORD 代表行級鎖,TABLE 代表表級鎖。 lock_table:被鎖定的或者包含鎖定記錄的表的名稱。 lock_index:當 LOCK_TYPE=’RECORD’ 時,表示索引的名稱;否則為 NULL。 lock_space:當 LOCK_TYPE=’RECORD’ 時,表示鎖定行的表空間 ID;否則為 NULL。 lock_page:當 LOCK_TYPE=’RECORD’ 時,表示鎖定行的頁號;否則為 NULL。 lock_rec:當 LOCK_TYPE=’RECORD’ 時,表示一堆頁面中鎖定行的數量,亦即被鎖定的記錄號;否則為 NULL。 lock_data:當 LOCK_TYPE=’RECORD’ 時,表示鎖定行的主鍵;否則為NULL。 ———————————————— 版權聲明:本文為CSDN博主「sugarCYF」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/sugarCYF/article/details/108433259
顯示哪些線程正在運行: show full processlist
浙公網安備 33010602011771號