索引-性能分析-show profiles

为什么需要学习 profile详情? 

我们通过MySQL的慢查询日志可以定位到哪条SQL执行耗时比较长,从而对这类的SQL语句进行优化。但是慢查询只会记录执行耗时超过我们设置的指定时间之后才会记录到慢查询日志里面。

比如我们设置的指定时间为2s,慢查询日志只会记录执行时间超过2s的SQL,执行时间为1.9s、1.8s的SQL不会被记录。那么我们怎么来定位到这些SQL呢?所以就需要通过 show profiles 指令来实现。

profile详情

索引-性能分析-show profiles_第1张图片

SELECT @@have_profiling; 

索引-性能分析-show profiles_第2张图片

 查看SQL耗时情况

索引-性能分析-show profiles_第3张图片

-- 查看每一条SQL的耗时情况
show PROFILES;

注意:根据name查询的耗时时间几乎是根据id查的两倍,为什么?因为根据name会回表查。

 索引-性能分析-show profiles_第4张图片

你可能感兴趣的:(MySQL,mysql)