MySQL Shell 9.0  /  ...  /  內建 MySQL Shell 報表:執行緒

10.1.6.3 內建 MySQL Shell 報表:執行緒

內建的 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