慢查询日志分析工具之pt-query-digest

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了慢查询日志分析工具之pt-query-digest相关的知识,希望对你有一定的参考价值。

简介

       pt-query-digest 是用于分析mysql慢查询的一个工具,与mysqldumpshow工具相比,py-query_digest 工具的分析结果更具体,更完善。

       有时因为某些原因如权限不足等,无法在服务器上记录查询。这样的限制我们也常常碰到,所以开发了两种替代的技术,都集成到了Percona Toolkit 中的 pt-query-digest 中。

       第一种是通过 --processlist 选项不断查看 SHOW FULL PROCESSLISTR 的输出,记录查询第一次出现的时间和消失的时间。某些情况下这样的精度也足够发现问题,但却无法捕获所有查询。一些执行较快的查询可能在两次执行的间隙就执行完成了,从而无法捕获到。

       第二种是通过抓取TCP网络包,然后根据MYSQL的客户端/服务端通信协议进行解析。可以先通过 tcpdump 将网络包数据保存到磁盘,然后使用 pt-query-digest 的 --type=tcpdump 选项来解析并分析查询。此方法的精度比较高,并且可以捕获所有的查询。还可以解析更高级的协议特性,比如可以解析二进制协议,从而创建并执行服务器端预解析的语句(prepared statement)及压缩协议。另外还有一种方法,就是通过MYSQL Proxy 代理层的脚本来记录所有查询,但在实践中我们很少这样做。

在windows中安装 

       在我的 mysql/bin 文件夹里并没有  pt-query-digest.pl 文件,并且要想在windows中支持perl文件,得先安装 perl 支持,安装方法可查看 慢查询日志分析工具之mysqldumpslow接下来在 mysql/bin 文件夹下打开 git bash窗口,输入命令:

 curl -o pt-query-digest.pl https://www.percona.com/get/pt-query-digest

技术分享

进度为100%表示下载完成,可以使用命令验证: perl pt-query-digest.pl --help

使用方法

        技术分享 

       具体使用方法请查看 http://www.php.cn/mysql-tutorials-357655.html

 

 

以上是关于慢查询日志分析工具之pt-query-digest的主要内容,如果未能解决你的问题,请参考以下文章

MySQL优化之慢日志分析(Anemometer+Pt-query-digest)

pt-query-digest怎么分析慢查询日志分析数据

MySQL慢查询 - pt-query-digest详解慢查询日志

MySQL慢查询 - pt-query-digest详解慢查询日志

pt-query-digest详解慢查询日志

pt-query-digest详解慢查询日志(转)