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;