PROFILING 表提供了语句分析信息。其内容对应于 SHOW PROFILE 和 SHOW PROFILES 语句生成的信息(请参阅 第 15.7.7.31 节 “SHOW PROFILE 语句”)。除非将 profiling 会话变量设置为 1,否则该表为空。
此表已弃用;预计在未来的 MySQL 版本中将其删除。请改用 性能模式;请参阅 第 29.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 语句中获取。请参阅 第 15.7.7.31 节 “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;