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


这个工具同样来自percona-toolkit
 该工具集合的其他工具
 MySQL Slave异常关机的处理 (pt-slave-restart)
 
验证MySQL主从一致性(pt-table-checksum&pt-table-sync)
 
它可以剖析各种日志,从而分析性能问题
 包括
 1.慢日志(默认)
 2.tcpdump
 3.general log
 4.binlog
 5.show processlist
 
实验通过tpcc模拟一定的压力,并开启binlog,general log,slow log和tcpdump收集日志。
 关于tpcc参考:
 
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方式实验失败,尚不清楚如何使用这种方式剖析性能。

--------------------------------------分割线 --------------------------------------

Ubuntu 14.04下安装MySQL

《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF

Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL

Ubuntu 14.04下搭建MySQL主从服务器

Ubuntu 12.04 LTS 构建高可用分布式 MySQL 集群

Ubuntu 12.04下源代码安装MySQL5.6以及Python-MySQLdb

--------------------------------------分割线 --------------------------------------

本文永久更新链接地址:

相关内容