PROFILING
テーブルは、ステートメントプロファイリング情報を提供します。 その内容は、SHOW PROFILE
および SHOW PROFILES
ステートメントによって生成される情報に対応しています (セクション13.7.7.30「SHOW PROFILE ステートメント」 を参照)。 profiling
セッション変数は 1 に設定されないかぎり、テーブルは空です。
このテーブルは非推奨です。将来の MySQL リリースで削除される予定です。 かわりに Performance Schema を使用します。セクション27.19.1「パフォーマンススキーマを使用したクエリープロファイリング」 を参照してください。
PROFILING
テーブルには、次のカラムがあります:
-
QUERY_ID
数値のステートメント識別子。
-
SEQ
同じ
QUERY_ID
値を持つ行の表示順序を示す順序番号。 -
STATE
行の測定が適用されるプロファイリング状態。
-
DURATION
ステートメントの実行が指定された状態のままでいた時間 (秒)。
-
CPU_USER
,CPU_SYSTEM
ユーザーおよびシステムの CPU 使用率 (秒)。
-
CONTEXT_VOLUNTARY
,CONTEXT_INVOLUNTARY
自主的および標準的なコンテキストスイッチが発生した数。
-
BLOCK_OPS_IN
,BLOCK_OPS_OUT
ブロックの入出力操作の数。
-
MESSAGES_SENT
,MESSAGES_RECEIVED
送受信された通信メッセージの数。
-
PAGE_FAULTS_MAJOR
,PAGE_FAULTS_MINOR
メジャーおよびマイナーページフォルトの数。
-
SWAPS
スワップがいくつ発生したか。
-
SOURCE_FUNCTION
、SOURCE_FILE
およびSOURCE_LINE
プロファイリングされた状態がソースコードのどこで実行されるかを示す情報。
メモ
PROFILING
は非標準のINFORMATION_SCHEMA
テーブルです。
プロファイリング情報は、SHOW PROFILE
および SHOW PROFILES
ステートメントからも入手できます。 セクション13.7.7.30「SHOW PROFILE ステートメント」を参照してください。 たとえば、次のクエリーは同等です:
SHOW PROFILE FOR QUERY 2;
SELECT STATE, FORMAT(DURATION, 6) AS DURATION
FROM INFORMATION_SCHEMA.PROFILING
WHERE QUERY_ID = 2 ORDER BY SEQ;