该 PROFILING
表提供语句 profiling 信息。其内容对应于 SHOW PROFILE
和 SHOW PROFILES
语句产生的信息(见 第 15.7.7.32 节,“SHOW PROFILE 语句”)。该表为空,除非将 profiling
会话变量设置为 1。
该表已弃用;预计在未来 MySQL 版本中删除。请改用 性能架构;见 第 29.19.1 节,“使用性能架构进行查询 profiling”。
该 PROFILING
表具有以下列:
-
QUERY_ID
一个数字语句标识符。
-
SEQ
一个序号,指示具有相同
QUERY_ID
值的行的显示顺序。 -
STATE
该行测量适用的 profiling 状态。
-
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
, andSOURCE_LINE
指示 profiled 状态在源代码中的执行位置的信息。
注意事项
-
PROFILING
是一个非标准的INFORMATION_SCHEMA
表。
profiling 信息也可以从 SHOW PROFILE
和 SHOW PROFILES
语句中获得。见 第 15.7.7.32 节,“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;