pt-query-digest [OPTIONS] [FILES] [DSN]
1. 直接分析慢查询文件:pt-query-digestslow.log > slow_report.log2. 分析最近12小时内的查询:pt-query-digest--since=12hslow.log > slow_report2.log3. 分析指定时间范围内的查询:pt-query-digest slow.log --since '2014-04-17 09:30:00' --until '2014-04-17 10:00:00'> > slow_report3.log4. 分析指含有select语句的慢查询pt-query-digest--filter '$event->{fingerprint} =~ m/^select/i' slow.log> slow_report4.log5. 针对某个用户的慢查询pt-query-digest--filter '($event->{user} || "") =~ m/^root/i' slow.log> slow_report5.log6. 查询所有所有的全表扫描或full join的慢查询pt-query-digest--filter '(($event->{Full_scan} || "") eq "yes") ||(($event->{Full_join} || "") eq "yes")' slow.log> slow_report6.log7. 把查询保存到query_review表pt-query-digest--user=root –password=abc123 --reviewh=localhost,D=test,t=query_review--create-review-tableslow.log8. 把询保存到query_history表pt-query-digest--user=root –password=abc123 --reviewh=localhost,D=test,t=query_ history--create-review-tableslow.log_20140401pt-query-digest--user=root –password=abc123--reviewh=localhost,D=test,t=query_history--create-review-tableslow.log_201404029. 通过tcpdump抓取mysql的tcp协议数据,然后再分析tcpdump -s 65535 -x -nn -q -tttt -i any -c 1000 port 3306 > mysql.tcp.txtpt-query-digest --type tcpdump mysql.tcp.txt> slow_report9.log10. 分析binlogmysqlbinlog mysql-bin.000093 > mysql-bin000093.sqlpt-query-digest--type=binlogmysql-bin000093.sql > slow_report10.log11. 分析general logpt-query-digest--type=genloglocalhost.log > slow_report11.logmysqldumpslow [ OPTS… ] [ LOGS… ]
得到返回记录集最多的10个查询
/path/mysqldumpslow -s r -t 10 /database/mysql/slow-log
得到按照时间排序的前10条里面含有左连接的查询语句
/path/mysqldumpslow -s t -t 10 -g “left join” /database/mysql/slow-log
主要功能是, 统计不同慢sql的
出现次数(Count),
执行最长时间(Time),
累计总耗费时间(Time),
等待锁的时间(Lock),
发送给客户端的行总数(Rows),
扫描的行总数(Rows),
用户以及sql语句本身(抽象了一下格式, 比如 limit 1, 20 用 limit N,N 表示).