內建 MySQL Shell 報表 threads
列出已連線 MySQL 伺服器中,屬於用來執行報表的使用者帳戶的目前執行緒。此報表適用於執行所有支援的 MySQL 5.7、8.0 和 8.1 版本的伺服器。如果目標伺服器的 MySQL 伺服器版本中沒有任何資訊項目,報表會將其省略。
threads
報表提供從各種來源 (包括 MySQL 的效能結構描述) 擷取的每個執行緒資訊。您可以使用報表專屬選項選擇顯示前景執行緒、背景執行緒或所有執行緒。您可以報告每個執行緒的預設資訊集,或從更多可用選擇中選取要包含在報表中的特定資訊。您可以篩選、排序及限制輸出。如需報表專屬選項的詳細資訊,以及您可以包含在報表中的完整資訊清單,請發出下列其中一個 MySQL Shell 命令來檢視報表說明
\help threads
\show threads --help
除了報表專屬選項之外,threads
報表也會接受 \show
和 \watch
命令的標準選項,如 章節 10.1.5,「執行 MySQL Shell 報表」中所述。 threads
報表屬於清單類型,且預設會將結果以表格形式傳回,但您可以使用 --vertical
(或 -E
) 選項以垂直格式顯示它們。
threads
報表會使用 MySQL 伺服器的 format_statement()
函數 (請參閱 format_statement() 函數)。報表中顯示的任何截斷陳述式,都是根據 MySQL 伺服器 sys_config
資料表中 statement_truncate_len
選項的設定來截斷,預設值為 64 個字元。
下列清單摘要說明 threads
報表專屬選項提供的功能。如需完整詳細資訊和選項的簡短形式,請參閱報表說明
-
--foreground
、--background
、--all
僅列出前景執行緒、僅列出背景執行緒,或列出所有執行緒。報表會為您的執行緒類型選取項目顯示預設的一組適當欄位,除非您使用
--format
選項來指定您自己選擇的欄位。-
--format
定義您自己的自訂資訊集,以指定為以逗號分隔的欄位清單 (以及顯示名稱,如果您想要的話),來顯示每個執行緒。報表說明會列出您可以包含在內以自訂報表的所有欄位。
-
--where
、--order-by
、--desc
、--limit
使用邏輯運算式 (
--where
) 篩選傳回的結果、以選取的欄位 (--order-by
) 排序、以降冪 (而非升冪) 排序 (--desc
),或限制傳回的執行緒數目 (--limit
)。
例如,下列命令會執行 threads
報表以顯示所有前景執行緒,其中包含自訂的資訊集,包含執行緒 ID、任何衍生執行緒的 ID、連線 ID、使用者名稱和主機名稱、用戶端程式名稱、執行緒正在執行的命令類型,以及執行緒配置的記憶體
mysql-js> \show threads --foreground -o tid,ptid,cid,user,host,progname,command,memory