mysql分析语句执行时长

Query Profiler是MYSQL5.0.37之后添加的一种query诊断分析工具,通过它可以分析出一条SQL语句的性能瓶颈在什么地方。
使用的explain,以及slow query log都无法精确分析时,可用Query Profiler定位出一条SQL语句执行的各种资源消耗情况。

— 查看数据库版本
select version();

show variables like "%pro%";
— profiling 的值为 OFF 表示功能关闭,可通过 set profiling = 1; 来开启

set profiling = 1; — 执行后, profiling 就是开启状态

show profiles; — 这时再执行这条命令可以查看语句执行消耗的时间

show profile for query 1 ; — 这条语句可查看编号为1的语句各操作的详细耗时

— 可以查看出一条SQL语句执行的各种资源消耗情况,比如CPU,IO等
show profile cpu, block io, memory,swaps,context switches,source for query 6;

show profile all for query 6 查看第6条语句的所有的执行信息。

— 测试完毕后,关闭参数:
set profiling = 0

Leave a Reply

Your email address will not be published.