MySQL SQL剖析(SQL profile)(3)

--查看特定部分的开销,如下为CPU部分的开销
root@localhost[sakila]> show profile cpu for query 2 ;
+----------------------+----------+----------+------------+
| Status              | Duration | CPU_user | CPU_system |
+----------------------+----------+----------+------------+
| starting            | 0.000148 | 0.000000 |  0.000000 |
| checking permissions | 0.000014 | 0.000000 |  0.000000 |
| Opening tables      | 0.000047 | 0.000000 |  0.000000 |
| init                | 0.000023 | 0.000000 |  0.000000 |
| System lock          | 0.000035 | 0.000000 |  0.000000 |
| optimizing          | 0.000012 | 0.000000 |  0.000000 |
| statistics          | 0.000019 | 0.000000 |  0.000000 |
| preparing            | 0.000014 | 0.000000 |  0.000000 |
| executing            | 0.000006 | 0.000000 |  0.000000 |
| Sending data        | 0.000990 | 0.001000 |  0.000000 |
| end                  | 0.000010 | 0.000000 |  0.000000 |
| query end            | 0.000011 | 0.000000 |  0.000000 |
| closing tables      | 0.000010 | 0.000000 |  0.000000 |
| freeing items        | 0.000016 | 0.000000 |  0.000000 |
| cleaning up          | 0.000029 | 0.000000 |  0.000000 |
+----------------------+----------+----------+------------+

--如下为MEMORY部分的开销
root@localhost[sakila]> show profile memory for query 2 ;
+----------------------+----------+
| Status              | Duration |
+----------------------+----------+
| starting            | 0.000148 |
| checking permissions | 0.000014 |
| Opening tables      | 0.000047 |
| init                | 0.000023 |
| System lock          | 0.000035 |
| optimizing          | 0.000012 |
| statistics          | 0.000019 |
| preparing            | 0.000014 |
| executing            | 0.000006 |
| Sending data        | 0.000990 |
| end                  | 0.000010 |
| query end            | 0.000011 |
| closing tables      | 0.000010 |
| freeing items        | 0.000016 |
| cleaning up          | 0.000029 |
+----------------------+----------+

--同时查看不同资源开销
root@localhost[sakila]> show profile block io,cpu for query 2;
+----------------------+----------+----------+------------+--------------+---------------+
| Status              | Duration | CPU_user | CPU_system | Block_ops_in | Block_ops_out |
+----------------------+----------+----------+------------+--------------+---------------+
| starting            | 0.000148 | 0.000000 |  0.000000 |            0 |            0 |
| checking permissions | 0.000014 | 0.000000 |  0.000000 |            0 |            0 |
| Opening tables      | 0.000047 | 0.000000 |  0.000000 |            0 |            0 |
| init                | 0.000023 | 0.000000 |  0.000000 |            0 |            0 |
| System lock          | 0.000035 | 0.000000 |  0.000000 |            0 |            0 |
| optimizing          | 0.000012 | 0.000000 |  0.000000 |            0 |            0 |
| statistics          | 0.000019 | 0.000000 |  0.000000 |            0 |            0 |
| preparing            | 0.000014 | 0.000000 |  0.000000 |            0 |            0 |
| executing            | 0.000006 | 0.000000 |  0.000000 |            0 |            0 |
| Sending data        | 0.000990 | 0.001000 |  0.000000 |            0 |            0 |
| end                  | 0.000010 | 0.000000 |  0.000000 |            0 |            0 |
| query end            | 0.000011 | 0.000000 |  0.000000 |            0 |            0 |
| closing tables      | 0.000010 | 0.000000 |  0.000000 |            0 |            0 |
| freeing items        | 0.000016 | 0.000000 |  0.000000 |            0 |            0 |
| cleaning up          | 0.000029 | 0.000000 |  0.000000 |            0 |            0 |
+----------------------+----------+----------+------------+--------------+---------------+

--Author: Leshami
--Blog  :

--下面的SQL语句用于查询query_id为2的SQL开销,且按最大耗用时间倒序排列
root@localhost[sakila]> set @query_id=2;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/52d2c2d6d92dee7d815c01b44bfcc41b.html