>  기사  >  데이터 베이스  >  MySQL性能剖析工具(pt-query-digest)_MySQL

MySQL性能剖析工具(pt-query-digest)_MySQL

WBOY
WBOY원래의
2016-06-01 13:06:39895검색

这个工具同样来自percona-toolkit

 该工具集合的其他工具

 MySQL Slave异常关机的处理 (pt-slave-restart)

 

 包括

 1.慢日志(默认)

 2.tcpdump

 3.general log

 4.binlog

 5.show processlist

 

实验通过tpcc模拟一定的压力,并开启binlog,general log,slow log和tcpdump收集日志。

 

1.slow log方式

 将slow_query_log设置为on

 long_query_time设置为0

 重新连接服务器(一般意味着中间件服务器重启)

 这样慢日志将记录所有的操作。

 

通过pt-query-digest分析慢日志文件,生成剖析报告

 首先是概要信息,包括一共有54.17k个操作,46个语句,平均每秒1.55k查询,剖析报告覆盖的时间等。

 

概要还包括类似Top SQL的分析

 可以从响应时间查看对服务器性能影响最大的SQL,其中R/Call指的是  平均每次执行的响应时间 ResponseTime/Calls

 

然后就是每条SQL的详细剖析报告,

 pct指的是该项占概要报告中的百分比

 

2.tcpdump方式

 因为慢日志方式需要重新连接,而生产环境重启中间件是非常昂贵的操作。

 所以在数据库服务器上抓包分析也是一种不错的选择。

 pt-query-digest对于抓包有一定的格式。(-x -nn -q -tttt)

 -s:源端口

 -c:抓包的数量

 tcpdump -s 65535 -x -nn -q -tttt -i any -c 100000 port 3306 > test.dmp

 在完成抓包采集之后进行分析

 pt-query-digest --limit 10 --type tcpdump test.dmp

 limit 10 限制显示排名前10的操作

 

其他方式生成的信息会有缺失,可能达不到预期的效果。

而processlist方式实验失败,尚不清楚如何使用这种方式剖析性能。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.