MySQL慢日志分析工具pt-query-digest

slow log 分析:

报告最近半个小时的慢查询:
pt-query-digest --report --since 1800s slow.log

报告一个时间段的慢查询:
pt-query-digest --report --since '2014-12-30 14:50:00' --until '2014-12-30 14:59:59' slow.log

报告只含select语句的慢查询:
pt-query-digest --filter '$event->{fingerprint} =~ m/^select/i' slow.log

报告针对某个用户的慢查询:
pt-query-digest --filter '($event->{user} || "") =~ m/^root/i' slow.log

报告所有的全表扫描或full join的慢查询:
pt-query-digest --filter '(($event->{Full_scan} || "") eq "yes") || (($event->{Full_join} || "") eq "yes")' slow.log

下面是一个输出结果:

# 7.8s user time, 110ms system time, 22.48M rss, 177.75M vsz
pt-query-digest占用的用户时间和系统时间,rss内存,虚拟内存

# Current date: Thu Jan  1 11:00:16 2015
# Hostname: machine1
# Files: slow.log
# Overall: 437 total, 28 unique, 0.76 QPS, 0.64x concurrency _____________
总共语句数量,唯一语句数量,qps,并发数
# Time range: 2014-12-30 14:50:01 to 14:59:33
时间范围
# Attribute          total     min     max     avg     95%  stddev  median
# ============     ======= ======= ======= ======= ======= ======= =======
                     总计      最小    最大    平均 百分比 
# Exec time           368s    88us    126s   842ms    34ms     10s     1ms
语句执行时间
# Lock time           78ms    39us     2ms   179us   445us   189us    98us
锁时间
# Rows sent          2.91k       0      95    6.82   65.89   17.33    0.99
传输到客户端的行数
# Rows examine     159.23M       0  52.94M 373.11k   1.53k   4.24M    4.96
扫描的行数大小
# Query size       471.95k      90   4.14k   1.08k   3.19k   1.33k  258.32
查询语句大小

# Profile
# Rank Query ID           Response time  Calls R/Call   V/M   Item
# ==== ================== ============== ===== ======== ===== ============
#    1 0xE2D730FF50E6F592 364.5363 99.1%     3 121.5121  0.17 SELECT * FROM TEST
rank:语句排名,默认根据响应时间拍下,可以通过--order by修改
query id:查询语句的hash值
response time:响应时间
calls:查询语句执行次数
r/call:平均每次执行的响应时间
V/M:离差指数,执行时间变化较大。

# MISC 0xMISC               3.2034  0.9%   434   0.0074   0.0 <27 items="">


单个语句的各项指标:
# Query 1: 0.14 QPS, 16.57x concurrency, ID 0xE2D730FF50E6F592 at byte 14050954
QPS:每秒查询数
concurrency:并发数
ID:查询语句hash值
byte:查询语句在slow log文件中的位置
# This item is included in the report because it matches --limit.
# Scores: V/M = 0.17
# Time range: 2014-12-30 14:52:41 to 14:53:03
# Attribute    pct   total     min     max     avg     95%  stddev  median
# ============ === ======= ======= ======= ======= ======= ======= =======
# Count          0       3
执行次数
# Exec time     99    365s    116s    126s    122s    124s      5s    118s
# Lock time      1     1ms   365us   463us   401us   445us    41us   366us
# Rows sent      0       0       0       0       0       0       0       0
# Rows examine  99 158.83M  52.94M  52.94M  52.94M  52.94M       0  52.94M
# Query size     0   1.32k     450     450     450     450       0     450
# String:
# Databases    test
# Hosts        10.1.1.44
客户端机器名
# Users        testuser
执行语句的用户名
# Query_time distribution
#   1us
#  10us
# 100us
#   1ms
#  10ms
# 100ms
#    1s
#  10s+  ################################################################
执行时间的分布图
# Tables
#    SHOW TABLE STATUS FROM `test` LIKE 'TEST'\G
表统计信息
#    SHOW CREATE TABLE `test`.`TEST`\G
# EXPLAIN /*!50100 PARTITIONS*/
select * from test\G
查询执行计划

参考:
http://liang3391.blog.51cto.com/178205/1249348/
http://my.oschina.net/anthonyyau/blog/295949
http://www.percona.com/doc/percona-toolkit/2.1/pt-query-digest.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25105315/viewspace-1387169/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25105315/viewspace-1387169/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值