內建的 MySQL Shell 報表 thread
提供連線 MySQL 伺服器中特定執行緒的詳細資訊。此報表適用於執行所有受支援 MySQL 5.7 和 MySQL 8.0 版本的伺服器。如果目標伺服器的 MySQL Server 版本中沒有任何資訊項目,報表會省略它。
thread
報表提供所選執行緒及其活動的相關資訊,這些資訊來自各種來源,包括 MySQL 的 Performance Schema。依預設,報表會顯示目前連線所用執行緒的資訊,或者您可以依其 ID 或連線 ID 識別執行緒。您可以選取一或多個資訊類別,或檢視有關執行緒的所有可用資訊。如需報表特定選項以及您可以納入報表之資訊的詳細資訊,請發出下列其中一個 MySQL Shell 命令以檢視報表說明
\help thread
\show thread --help
除了報表特定的選項之外,thread
報表也接受 \show
和 \watch
命令的大部分標準選項,如第 10.1.5 節,「執行 MySQL Shell 報表」中所述。例外情況是 \show
命令的 --vertical
(或 -E
) 選項,該選項不被接受。thread
報表具有自訂的輸出格式,其中包括以不同章節呈現的垂直清單和表格,而且您無法變更此輸出格式。
threads
報表使用 MySQL Server 的 format_statement()
函數 (請參閱format_statement() 函數)。報表中顯示的任何截斷陳述式都會根據 MySQL Server sys_config
表格中 statement_truncate_len
選項的設定截斷,該選項預設為 64 個字元。
下列清單摘要說明 threads
報表之報表特定選項所提供的功能。如需完整詳細資訊和選項的簡短格式,請參閱報表說明
-
--tid
、--cid
識別您要報告的執行緒 ID 或連線 ID。
-
--general
顯示執行緒的基本資訊。如果您未使用下列任何選項,則預設會傳回此資訊。
-
--brief
在一行上顯示執行緒的簡短描述。
-
--client
顯示有關用戶端連線和用戶端工作階段的資訊。
-
--innodb
顯示使用執行緒的目前 InnoDB 交易資訊 (如果有的話)。
-
--locks
顯示有關執行緒正在封鎖和被封鎖的鎖定資訊。
-
--prep-stmts
顯示有關為執行緒配置的準備陳述式資訊。
-
--status
顯示有關執行緒工作階段狀態變數的資訊。您可以指定要比對的前置詞清單,在此情況下,只會顯示符合的變數。
-
--vars
顯示有關執行緒工作階段系統變數的資訊。您可以指定要比對的前置詞清單,在此情況下,只會顯示符合的變數。
-
--user-vars
顯示有關執行緒使用者定義變數的資訊。您可以指定要比對的前置詞清單,在此情況下,只會顯示符合的變數。
-
--all
顯示上述所有資訊,簡短描述除外。
例如,下列命令會針對執行緒 ID 為 53 的執行緒執行 thread
報表,並傳回有關執行緒的一般資訊、用戶端連線的詳細資訊,以及執行緒正在封鎖或被封鎖的任何鎖定資訊
mysql-py> \show thread --tid 53 --general --client --locks