mysql中profile的使用

mysql 的 sql 性能分析器主要用途是显示 sql 执行的整个过程中各项资源的使用情况。分析器可以更好的展示出不良 SQL 的性能问题所在。

首先在5.5中已经可以使用了,默认是关闭的,查看是否打开:
1) 开启
mysql> SET profiling=1;或 SET profiling=on;

2)
用法
SHOW PROFILE [type [, type] … ]
[FOR QUERY n]
[LIMIT row_count [OFFSET offset]]

type:
ALL
| BLOCK IO
| CONTEXT SWITCHES
| CPU
| IPC
| MEMORY
| PAGE FAULTS
| SOURCE
| SWAPS

SHOW PROFILES显示最近发给服务器的多条语句,条数根据会话变量profiling_history_size定义,默认是15,最大值为100。设为0等价于关闭分析功能。

SHOW PROFILE FOR QUERY n,这里的n就是对应SHOW PROFILES输出中的Query_ID。


例如:

mysql> show profiles;
+----------+-------------+---------------------------------------+
| Query_ID | Duration | Query |
+----------+-------------+---------------------------------------+
| 1 | 0.00037700 | alter table table1 drop column c3 int |
| 2 | 70.37123800 | alter table table1 drop column c3

则:
mysql> SHOW PROFILE FOR QUERY 2; #查看alter table table1 drop column c3的分析

然后显示一大堆的信息,如:
Status | Duration |
+------------------------------+-----------+
| starting | 0.000183 |
| checking permissions | 0.000057 |
| checking permissions | 0.000059 |
| init | 0.000060 |
| Opening tables | 0.000071 |
| System lock | 0.000062 |
| setup | 0.000080 |
| creating table | 0.005052 |
| After create | 0.000220 |
| copy to tmp table | 0.000244 |
| rename result table | 70.364027 |
| end | 0.000575 |
| Waiting for query cache lock | 0.000062 |
| end | 0.000075 |
| query end | 0.000057 |
| closing tables | 0.000061 |
| freeing items | 0.000080 |
| logging slow query | 0.000056 |
| logging slow query | 0.000098 |
| cleaning up | 0.000059 |
+------------------------------+-----------+
20 rows in set (0.00 sec)

ype是可选的,取值范围可以如下:

ALL 显示所有性能信息
BLOCK IO 显示块IO操作的次数
CONTEXT SWITCHES 显示上下文切换次数,不管是主动还是被动
CPU 显示用户CPU时间、系统CPU时间
IPC 显示发送和接收的消息数量
MEMORY [暂未实现]
PAGE FAULTS 显示页错误数量
SOURCE 显示源码中的函数名称与位置
SWAPS 显示SWAP的次数

mysql> show profile cpu for query 2;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值