分享更有价值
被信任是一种快乐

怎么使用pt-query-digest分析日志

文章页正文上

这篇文章给大家分享的是有关怎么使用pt-query-digest分析日志的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1、工具介绍

2、工具使用语法
pt-query-digest [OPTIONS] [FILES] [DSN] –create-review-table当使用–review参数把分析结果输出到表中时,如果没有表就自动创建。
–create-history-table当使用–history参数把分析结果输出到表中时,如果没有表就自动创建。
–filter对输入的慢查询按指定的字符串进行匹配过滤后再进行分析
–limit限制输出结果百分比或数量,默认值是20,即将最慢的20条语句输出,如果是50%则按总响应时间占比从大到小排序,输出到总和达到50%位置截止。
–hostmysql服务器地址
–usermysql用户名
–passwordmysql用户密码
–history将分析结果保存到表中,分析结果比较详细,下次再使用–history时,如果存在相同的语句,且查询所在的时间区间和历史表中的不同,则会记录到数据表中,可以通过查询同一CHECKSUM来比较某类型查询的历史变化。
–review将分析结果保存到表中,这个分析只是对查询条件进行参数化,一个类型的查询一条记录,比较简单。当下次使用–review时,如果存在相同的语句分析,就不会记录到数据表中。
–output分析结果输出类型,值可以是report(标准分析报告)、slowlog(Mysql slow log)、json、json-anon,一般使用report,以便于阅读。
–since从什么时间开始分析,值为字符串,可以是指定的某个”yyyy-mm-dd [hh:mm:ss]”格式的时间点,也可以是简单的一个时间值:s(秒)、h(小时)、m(分钟)、d(天),如12h就表示从12小时前开始统计。
–until截止时间,配合—since可以分析一段时间内的慢查询。
3、分析报告解析

pt-query-digest –since=12h slow.log > slow_report2.log

(3)分析指定时间范围内的查询pt-query-digest slow.log –since ‘2014-04-17 09:30:00’ –until ‘2014-04-17 10:00:00’> > slow_report3.log

(4)分析只含有select语句的慢查询
pt-query-digest–filter ‘$event->{fingerprint} =~ m/^select/i’ slow.log> slow_report4.log

(5) 针对某个用户的慢查询
pt-query-digest–filter ‘($event->{user} || “”) =~ m/^root/i’ slow.log> slow_report5.log

(6) 查询所有的全表扫描或full join的慢查询
pt-query-digest–filter ‘(($event->{Full_scan} || “”) eq “yes”) ||(($event->{Full_join} || “”免费主机域名) eq “yes”)’ slow.log> slow_report6.log

(7)把查询保存到query_review表
pt-query-digest –user=root –password=abc123 –review h=localhost,D=test,t=query_review–create-review-table slow.log

(8)把查询保存到query_history表
pt-query-digest –user=root –password=abc123 –review h=localhost,D=test,t=query_ history–create-review-table slow.log_20140401
pt-query-digest –user=root –password=abc123–revie免费主机域名w h=localhost,D=test,t=query_history–create-review-table slow.log_20140402

(9)通过tcpdump抓取mysql的tcp协议数据,然后再分析
tcpdump -s 65535 -x -nn -q -tttt -i any -c 1000 port 3306 > mysql.tcp.txt
pt-query-digest –type tcpdump mysql.tcp.txt> slow_report9.log

(10)分析binlog
mysqlbinlog mysql-bin.000093 > mysql-bin000093.sql
pt-query-digest –type=binlog mysql-bin000093.sql > slow_report10.log

(11)分析general log
pt-query-digest –type=genlog localhost.log > slow_report11.log感谢各位的阅读!关于“怎么使用pt-query-digest分析日志”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

相关推荐: Oracle数据库日常巡检有哪些

本篇内容介绍了“Oracle数据库日常巡检有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!包含:检查Oracle实例状态,检查Oracle服务进程,检查Or…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册