The PROFILING table provides statement profiling information. Its contents correspond to the information produced by the SHOW PROFILE and SHOW PROFILES statements (see Section 15.7.7.32, “SHOW PROFILE Statement”). The table is empty unless the profiling session variable is set to 1.
This table is deprecated; expect it to be removed in a future MySQL release. Use the Performance Schema instead; see Section 29.19.1, “Query Profiling Using Performance Schema”.
The PROFILING table has these columns:
-
QUERY_IDA numeric statement identifier.
-
SEQA sequence number indicating the display order for rows with the same
QUERY_IDvalue. -
STATEThe profiling state to which the row measurements apply.
-
DURATIONHow long statement execution remained in the given state, in seconds.
-
CPU_USER,CPU_SYSTEMUser and system CPU use, in seconds.
-
CONTEXT_VOLUNTARY,CONTEXT_INVOLUNTARYHow many voluntary and involuntary context switches occurred.
-
BLOCK_OPS_IN,BLOCK_OPS_OUTThe number of block input and output operations.
-
MESSAGES_SENT,MESSAGES_RECEIVEDThe number of communication messages sent and received.
-
PAGE_FAULTS_MAJOR,PAGE_FAULTS_MINORThe number of major and minor page faults.
-
SWAPSHow many swaps occurred.
-
SOURCE_FUNCTION,SOURCE_FILE, andSOURCE_LINEInformation indicating where in the source code the profiled state executes.
Notes
-
PROFILINGis a nonstandardINFORMATION_SCHEMAtable.
Profiling information is also available from the SHOW PROFILE and SHOW PROFILES statements. See Section 15.7.7.32, “SHOW PROFILE Statement”. For example, the following queries are equivalent:
SHOW PROFILE FOR QUERY 2;
SELECT STATE, FORMAT(DURATION, 6) AS DURATION
FROM INFORMATION_SCHEMA.PROFILING
WHERE QUERY_ID = 2 ORDER BY SEQ;