mysql慢查询分析工具比较与实战

00 前言

在进行mysql性能优化的时候,第一个想到的便是查看慢sql。

但是对于慢sql有没有什么好的工具进行分析呢?

推荐两个工具mysqldumpslow及pt-query-digest。

mysqlslowdump较为简单,常用命令:

#得到返回记录最多的20个sql
mysqldumpslow -s r -t 20 slowSQl.log

# 得到平均访问次数最多的20条sql
mysqldumpslow -s ar -t 20 slowSQl.log

如果linux上没有安装mysqldumpslow,yum install安装下就行了。

本文主要说下pt-query-digest。

pt-query-digest可以非常清晰地将slowSQL分析出来,类似oracle的AWR报告。

    # Rank Query ID                        Response time   Calls R/Call V/M   
# ==== =============================== =============== ===== ====== ===== 
#    1 0xABD1DCCCCD5AA5128E10C27B34... 1246.6948 41.7%   283 4.4053  0.04 UPDATE ziweidashi_deviceinfo
#    2 0x6914B81AAD1785E50708ABD113...  877.6900 29.3%   339 2.5891  0.09 SELECT birthDay_notify
#    3 0x44D9474C6D5C58DD07B5FEEA0D...  299.4193 10.0%    71 4.2172  0.05 SELECT tmall_product_orders
#    4 0xA9BE84CBE3DAA9B1CDD9B5A9EC...  127.0137  4.2%    46 2.7612  0.04 SELECT daily_user_action_log
#    5 0xCF0E12117C971C3013142E3717...  118.3138  4.0%    49 2.4146  0.05 SELECT tmall_user_take_coupon_record
#    6 0x94263184D24186330B13193534...   97.0805  3.2%    35 2.7737  0.56 SELECT tgg_users
#    7 0xC51165F1287A2ECDA221AC1F54...   52.5870  1.8%    22 2.3903  0.04 SELECT util_user_task_log
#    8 0xB8004D6D8A7A7967E04CD81E26...   43.7895  1.5%    16 2.7368  0.08 SELECT daily_user_action_log
#    9 0x910E19224F33DAA6391927B8E8...   41.3720  1.4%    15 2.7581  1.17 SELECT qifugong_tianbi_record
# MISC 0xMISC                            86.7871  2.9%    30 2.8929   0.0 <12 ITEMS>

并且不只可以分析慢SQL日志,还可以分析binlog、general log。

此外,pt-query-digest是percona-toolkit工具包的其中一个工具。
这个工具包下还有很多实用的性能分析辅助工具。

01 安装排坑

1、下载

# 进入安装目录
cd /usr/local/src

# 下载percona-toolkit 工具包
wget percona.com/get/percona-toolkit.tar.gz

# 解压
tar zxf percona-toolkit.tar.gz

# 进入解压文件夹
cd /usr/local/src/percona-toolkit-3.1.0

# 安装perl模块,制定依赖路径
perl Makefile.PL PREFIX=/usr/local/percona-toolkit

2、报错 prerequisite DBD::mysql 3 not found

报错如下,找不到DBD包

[root@iZ2zebthf35ejlps5v87ksZ percona-toolkit-3.1.0]# perl Makefile.PL PREFIX=/usr/local/percona-toolkit
Checking if your kit is complete...
Looks good
Warning: prerequisite DBD::mysql 3 not found.
Warning: prerequisite DBI 1.46 not found.
Writing Makefile for percona-toolkit

百度问题,找到链接,https://blog.csdn.net/heizistudio/article/details/45724707?locationNum=8&fps=1

安装依赖包

yum install perl-DBD-MySQL

然后重新执行命令

[root@iZ2zebthf35ejlps5v87ksZ percona-toolkit-3.1.0]# perl Makefile.PL PREFIX&#
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值