Home  >  Article  >  Database  >  MySQL性能剖析工具(pt-query-digest)_MySQL

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

WBOY
WBOYOriginal
2016-06-01 13:06:39898browse

这个工具同样来自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方式实验失败,尚不清楚如何使用这种方式剖析性能。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn