大鹏

易天下

mysql profile explain slow_query_log分析优化查询

在mysql查询性能分析中最常用的就是explain了,profile查看一些具体的性能也是不错的。同时也可以通过slow_query_log记录的慢日志分析查询性能。
1. profile

我们可以先使用
SELECT @@profiling;
来查看是否已经启用profile,如果profilng值为0,可以通过
SET profiling = 1;
来启用。启用profiling之后,我们执行一条查询语句,比如:
select count(*) from abc_post;
show profiles;

+----------+------------+-----------------------------------+
| Query_ID |Duration 
     |Query                        |
+----------+------------+-----------------------------------+
      0.00021500   | select@@profiling           |
      0.05522700   | select count(*)from abc_posts|
+----------+------------+-----------------------------------+
2 rows in set (0.00 sec)
注意:Query_ID表示刚执行的查询语句

show profile for query 2;
+--------------------------------+----------+
|Status 
                       | Duration |
+--------------------------------+----------+
|starting 
                     | 0.000021 |
| checking query cache for query | 0.000045 |
| checkingpermissions 
         | 0.000007 |
| Openingtables 
               | 0.000011 |
| Systemlock 
                  | 0.000004 |
| Tablelock 
                   | 0.000040 |
|init 
                         | 0.000012 |
|optimizing 
                   | 0.000005 |
|statistics 
                   | 0.000010 |
|preparing 
            
阅读更多
个人分类: MYSQL
上一篇Freemind 於 Ubuntu 11.10 中文無法輸入問題解法
下一篇理解MySQL数据库覆盖索引
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭