Show profiles

是MySQL提供可以用来分析当前会话中SQL语句执行的资源消耗情况。
可以用于SQL的调优测量。默认情况下,参数处于关闭状态,并保存最近 15 次的运行结果。
看看SQL耗时到底出现在哪个环节。

查看是否开启

  1. show variables like "%profiling%";
  2. mysql> show variables like "%profiling%";
  3. +------------------------+-------+
  4. | Variable_name | Value |
  5. +------------------------+-------+
  6. | have_profiling | YES |
  7. | profiling | ON |
  8. | profiling_history_size | 15 |
  9. +------------------------+-------+
  10. //开启
  11. set profiling = 1;

开始分析

  • 先执行要分析的SQL语句
  • 执行show profiles;会出现如下结果

image.png
分析截图中的第5条SQL语句

show profile cpu,block io for query 5