pt-query-digest安装使用

MySQL慢查询分析工具pt-query-digest详解 本介绍了pt-query_digest的安装、碰到的坑及解决方法、用法示例、常用命令等。 一、简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析。可以把分析结果输出到文件中,分析过程是先对查询语... 阅读详情

1.安装

yum install perl-DBI
rpm -ivh MySQL-shared-compat-5.6.31-1.el6.x86_64.rpm
yum install perl-DBD-MySQL
yum install perl-IO-Socket-SSL
yum install perl-Time-HiRes
rpm -ivh perl-TermReadKey-2.30-3.el6.rfx.x86_64.rpm
rpm -ivh percona-toolkit-2.2.19-1.noarch.rpm

需要的rpm包可以从这里下载:http://rpm.pbone.net/


2.使用

[root@iZ25qph95vaZ data]# pt-query-digest slow_queries.log 

第一部分是摘要:
# 390ms USER TIME, 10ms system TIME, 15.67M rss, 105.84M vsz
# CURRENT DATE: Thu DEC 29 13:22:42 2011
# Hostname: test_dx 
# Files: dxdb1-slow.log
# Overall: 776 total, 11 UNIQUE, 0.00 QPS, 0.00x concurrency _____________
# TIME range: 2011-09-10 04:03:19 TO 2011-12-29 05:02:51
# Attribute          total     MIN     MAX     avg     95%  stddev  median
# ============     ======= ======= ======= ======= ======= ======= =======
# EXEC TIME          5657s      2s     33s      7s     23s      6s      5s
# LOCK TIME            33s       0     19s    43ms    98us   715ms    38us
# ROWS sent        323.38k       0 107.36k  426.73    0.99   6.35k       0
# ROWS examine     323.39k       0 107.36k  426.74       0   6.35k       0
# Query SIZE       217.95k      38     562  287.61  420.77   81.78  284.79

从这份摘要中可以看出,dxdb1-slow.log中共有776条SQL语句, 去掉重复(至于怎样才算是重复,下文会有介绍),有11条SQL。
然后又有很多的Attribute和很多的值,比如total(总和),min最小值, max最大值, avg平均值,
95%(*),stddev(不知道是啥,标准差?)和median中位数。
中位数的概念就是把这些值从小到大排序,位置位于最中间的那个数。

在这些值中,最有意义的恐怕就是95%了,与中位数类似,它也是把所有值从小到大排列,位置位于95%的那个数。
它过滤了一些非常大的值,因此更有统计学上的意义,其实统计学上更喜欢用四分位数(1/4, 1/2, 3/4), 中位数也是四分位数之一。

另外,根据SQL语句的不同,可能会有更多的Attribute显示出来。 比如Tmp tables, Tmp disk tbl,Tmp tbl size之类的。


继续看第二部分:

从这份摘要中可以看出,dxdb1-slow.log中共有776条SQL语句, 去掉重复(至于怎样才算是重复,下文会有介绍),有11条SQL。
然后又有很多的Attribute和很多的值,比如total(总和),min最小值, max最大值, avg平均值,
95%(*),stddev(不知道是啥,标准差?)和median中位数。
中位数的概念就是把这些值从小到大排序,位置位于最中间的那个数。

在这些值中,最有意义的恐怕就是95%了,与中位数类似,它也是把所有值从小到大排列,位置位于95%的那个数。
它过滤了一些非常大的值,因此更有统计学上的意义,其实统计学上更喜欢用四分位数(1/4, 1/2, 3/4), 中位数也是四分位数之一。

另外,根据SQL语句的不同,可能会有更多的Attribute显示出来。 比如Tmp tables, Tmp disk tbl,Tmp tbl size之类的。

继续看第二部分:

# Profile
# Rank Query ID           Response TIME   Calls R/CALL Apdx V/M   Item
# ==== ================== =============== ===== ====== ==== ===== ========
#    1 0x4BA72E7D091B848A 4002.9799 70.8%   547 7.3181 0.19  5.57 INSERT test_show
#    2 0x4AE6E5D741E52A10  463.9715  8.2%    57 8.1399 0.12  3.98 INSERT test_?click
#    3 0x120DE9D5CDE2DF8A  455.9982  8.1%    62 7.3548 0.17  5.72 INSERT cpm_pop
#    4 0x88B2139A82CBB181  275.9844  4.9%    34 8.1172 0.24  7.41 INSERT UPDATE test_stat_1
#    5 0x0F6895DB36DE570A  191.5783  3.4%    20 9.5789 0.23  7.96 INSERT UPDATE test_stat_2
#    6 0x30FE5C2032672827   92.1919  1.6%    25 3.6877 0.36  0.59 SHOW TABLE STATUS
#    7 0x40B69AB7631E4445   84.5306  1.5%    13 6.5024 0.15  3.48 SELECT test_show
# MISC 0xMISC               89.7177  1.6%    18 4.9843   NS   0.0 <4 ITEMS>

这一部分显示了最慢的七种类型的SQL语句。
我这里最慢的是INSERT INTO test_show …… 共有547条语句,虽然每次插入的数据都是不同的,但也被归于同一类型的语句了。


第三部分最重要了。
以排名第七的SQL为例。

# Query 7: 0.00 QPS, 0.00x concurrency, ID 0x40B69AB7631E4445 at byte 203205
# Scores: Apdex = 0.15 [1.0]*, V/M = 3.48
# Query_time sparkline: |      ^_|
# TIME range: 2011-11-24 05:02:15 TO 2011-12-10 05:02:43
# Attribute    pct   total     MIN     MAX     avg     95%  stddev  median
# ============ === ======= ======= ======= ======= ======= ======= =======
# COUNT          1      13
# EXEC TIME      1     85s      2s     20s      7s     10s      5s      5s
# LOCK TIME      0     1ms       0   118us    80us   108us    29us    86us
# ROWS sent      0      12       0       1    0.92    0.99    0.26    0.99
# ROWS examine   0      16       0       3    1.23    2.90    1.09    0.99
# Query SIZE     0   1.16k      91      91      91      91       0      91
# String:
# DATABASES    test
# Hosts        dx_web_1
# Users        test_user
# Query_time distribution
#   1us
#  10us
# 100us
#   1ms
#  10ms
# 100ms
#    1s  ################################################################
#  10s+  ###################
# TABLES
#    SHOW TABLE STATUS FROM `test` LIKE 'test_show'\G
#    SHOW CREATE TABLE `test`.`test_show`\G
# EXPLAIN /*!50100 PARTITIONS*/
SELECT COUNT(*) AS modify___c FROM test_show WHERE  ip=1303055780 AND web_id=5 AND ad_id = 4\G

从上面可以看出,共有13条语句,[95%]Exec time是10s,时间长得比较离谱了。数据库为test,主机为dx_web_1,用户名为test_user,然后是query time的分布图,这个图太恶心了,不过也可以看得出来大部分是处于1-10s之间的, 还有一些超过10秒了。

最后是几条SQL语句, 是pt-query-digest生成的,这些语句有助于分析问题。


事实上,pt-query-digest的功能远远不止于此,除了直接分析slow query log并生成报告,它还可以filter, replay, transform queries for mysql,postgresql, memcached!



ubuntu下安装pt-query-digest 最近在开发MySQL时要使用pt-query-digest工具分析性能问题,也一路遇到了一些问题,记录下俩偏于日后翻看。 系统: #45~20.04.1-Ubuntu SMP Mon Apr 4 09:38:31 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux 在安装过程中遇到了很多的问题,官网给的直接安装失败,不再贴图,下面是安装成功的过程: Ubuntu下安装pt-query-digest的过程: (1)、安装percona-toolkit sudo a 阅读详情

相关推荐

perl-TermReadKey-2.30-1.el3.rf.x86_64.rpm

安装pt perl(Term::ReadKey) is needed by percona-toolkit-2.2.14-1.noarch

percona-toolkit工具包的安装

1.安装依赖 yum -y install perl-DBI yum -y install perl-DBD-MySQL yum -y install perl-Time-HiRes yum -y install perl-IO-Socket-SSL 2.下载并安装perl-TermReadKey和percona-toolkit wget http://pkgs.repoforge...

yuanyk1222的博客 1426

Label Studio保姆级教程:从零搭建医疗影像标注平台(DICOM格式支持)

本文提供基于Label Studio从零搭建医疗影像标注平台的保姆级教程。针对DICOM格式支持,详细阐述了环境部署、DICOM深度集成与预处理、团队协作权限管理以及质量审核闭环等核心环节,旨在构建一个高效、可落地的医疗AI数据标注解决方案,助力模型落地。

nft7creator的博客 303

pt-query-digest使用

一、简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdump抓取的MySQL协议数据来进行分析。可以把分析结果输出到文件中,分析过程是先对查询语句的条件进行参数化,然后对参数化以后的查询进行分组统计,统计出各查询的执行时间、次数、占比等,可以借助分析结果...

这是一个记录学习的博客 1770

LightningChart使用教程:创建 JS 散点图

这是对 LightningChart JS XY 图表一些有趣功能的快速技术研究,以及如何使用 LightningChart JS 创建嵌入式散点聊天和添加自定义交互。 此图表将可视化一个 XY 坐标列表以及一个额外的自定义属性,它只是一段文本。这些自定义属性将与 UI 文本元素一起显示,这些元素将与用户的鼠标移动交互。 我们将介绍的突出功能是: 什么是散点图? 如何创建散点图? 如何将自定义属性附加到数据点。 如何创建交互式 UI 文本元素。 最终结果 什么是散点图? 散点图或散点图是..

Augenstern__zyx的博客 1370

WebVTT中的文本轨道(Text Tracks,TT)到底是什么鬼?

WebVTT,全称是The Web Video Text Tracks Format,意思是网络视频文本轨道格式。那么到底什么是文本轨道(Text Tracks)呢?这篇文章希望一探究竟。

码农1479的博客 1985

percona-toolkit工具包的安装和使用

1.检查和安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境。 依赖包检查命令为: rpm -qaperl-DBIperl-DBD-MySQLperl-Time-HiResperl-IO-Socket-SSL 如果有依赖包确实,可以使用下面的命令安装: yum install perl-DBI yum ins...

weixin_34113237的博客 241

osgEarth shapefile矢量生成三维模型案例 2.boston.earth

osgEarth shapefile矢量生成三维模型案例 2.boston.earth 波士顿城市建筑、路灯、公园、道路shp矢量生成三维模型案例。

qq_24934183的博客 3543

数据库-优化-pt-query-digest安装

安装pt-query-digest工具 快速安装(注:必须先要安装wget) wget https://www.percona.com/downloads/percona-toolkit/2.2.16/RPM/percona-toolkit-2.2.16-1.noarch.rpm && yum localinstall -y percona-toolkit-2.2.16-1...

Leon_Jinhai_Sun的博客 321

毫米波雷达SLAM实战:如何在无GPS的地下隧道实现精准三维建图(附Python代码)

本文深入探讨了在无GPS信号的地下隧道等拒止环境中,如何利用毫米波雷达SLAM技术实现精准三维建图。文章系统分析了毫米波雷达点云数据稀疏、噪声多的挑战,并提供了从环境配置、核心算法(如特征提取、ICP配准、回环检测)到全局优化的完整实战解决方案,附有可运行的Python代码,帮助开发者构建鲁棒的自主导航与建图系统。

t8u9v0w1x的博客 238

IAR for ARM 搭建STM32F103C8T6工程模板(实战指南)

本文详细介绍了如何在IAR for ARM开发环境中为STM32F103C8T6微控制器搭建完整的工程模板。从环境准备、固件库获取、目录结构设计到工程配置与编译调试,提供了实战指南和常见问题解决方案,帮助开发者快速建立稳定的STM32开发环境。

fun88的博客 987

mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用

系统性能调优尤其是mysql数据库性能调优一个主要依据就是慢查询日志了。原来在ubantu 或centos 上有一个强大工具就是 percona toolkit,那么在mac 上如何使用pt-query-digest呢?下载 percona toolkit访问 http://www.percona.com/downloads/percona-toolkit , 采用源代码安装......

我相信...... 6388

【WorkBuddy从入门到精通实战教程】使用手册 第 2 章 WorkBuddy的下载、安装、登录与更新

摘要:WorkBuddy官方下载地址为https://www.codebuddy.cn/work/,支持Mac和Windows系统,需根据设备自动匹配版本。安装时需核对发布者信息,Mac用户需拖入应用程序文件夹。登录支持微信扫码或手机号,公司电脑安装需IT授权。更新通过个人中心检查,遇到安装包损坏、登录失败或文件读写问题时,建议重新下载、检查网络/权限或联系官方支持。重要文件建议定期备份,避免直接操作原文件。(149字)

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 1825

MySQL - 日志分析工具:pt-query-digest 安装与使用

摘要: 本文详细介绍了MySQL日志分析工具pt-query-digest的安装与使用方法。主要内容包括: pt-query-digest简介:作为Percona Toolkit的核心工具,它能高效分析MySQL慢查询日志,生成性能报告,帮助定位SQL性能瓶颈。 安装指南:提供Linux系统通过包管理器安装的详细步骤,以及Docker和源码编译等替代方案。 准备工作:讲解如何配置MySQL慢查询日志,包括启用日志、设置阈值和路径等关键参数。 基础使用:演示基本语法和命令,展示如何运行分析并解读输出报告。 该

千淘万漉虽辛苦,吹尽狂沙始到金 2万+

光学材料仿真软件:FDTD Solutions_(4).材料属性的定义与应用

在光学材料仿真软件中,材料属性的定义和应用是至关重要的一步。正确地定义材料属性可以确保仿真结果的准确性和可靠性。本节将详细介绍如何在FDTD Solutions中定义和应用不同的材料属性,包括介质材料、金属材料、色散材料等,并提供具体的代码示例和数据样例。介质材料是光学仿真中最常见的材料类型之一。在FDTD Solutions中,可以通过多种方式定义介质材料,包括使用预定义的材料库、自定义材料参数或导入材料数据文件。FDTD Solutions内置了一个丰富的材料库,包含了许多常用材料的光学性质。

kkchenjj的博客 1401

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

使用yum安装pt-query-digest 并分析MySQL慢查询日志

使用yum安装pt-query-digest 并分析MySQL慢查询日志,查看MySQL慢日志设置,使用yum安装pt-query-digest分析日志文件

川子的博客 1051

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

pt-query-digest 安装及使用

打个草稿 介绍:pt-query-digest 可用于mysql的慢查询的日志分析,分析统计出每种慢查询的基本信息,如响应时间、最大执行时间、最小执行时间、执行时间的中位数等。(当然不只是这个功能) 安装注意点:1 只支持linux平台 2 可能需要一些依赖包的支持,所以最好联网安装,通过自动解决依赖的安装工具如yum等安装 ...

a963705892的博客 366

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

mysql 慢查询日志 mac_mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用

系统性能调优尤其是MySQL数据库性能调优一个主要依据就是慢查询日志了。原来在ubantu 或centos 上有一个强大工具就是 percona toolkit,那么在mac 上如何使用pt-query-digest呢?下载 percona toolkit安装 并预先填好安装过程中的那些坑进入下载的目录,开练:$tarxvfzpercona-toolkit-2.2.7.tar.gz$cd...

weixin_36152824的博客 319

pt-query-digest工具安装和使用

http://www.php.cn/mysql-tutorials-357655.html

仗贱走天涯 3483

MySQL慢查询分析工具pt-query-digest的安装和使用

官网:http://www.percona.com/doc/percona-toolkit/2.2/pt-query-digest.html   #快速安装 wget https://www.percona.com/downloads/percona-toolkit/2.2.16/RPM/percona-toolkit-2.2.16-1.noarch.rpm &amp;&amp; yum l...

ouxiaoxian的博客 1987

mysql慢日志分析利器 --pt-query-digest

pt-query-digest 安装:cmd 到mysql的bin目录下 执行 curl -o pt-query-digest “https://raw.githubusercontent.com/percona/percona-toolkit/2.2/bin/pt-query-digest” 还有,更加简单的: 执行 curl -o pt-query-digest “https://www.pe...

qq_40424765的博客 179

MySQL 学习 -- 第三天 -- MySQL查询分析器pt_query_digest的安装、使用

  一、pt_query_digest 简介与安装 1.简介  pt-query-digest(官网地址https://www.percona.com/doc/percona-toolkit/3.0/index.html)是用于分析mysql慢查询的一个工具,它可以分析binlog、General log、slowlog,也可以通过SHOW PROCESSLIST 或者通过tcpdump抓取...

Penrosee的博客 1247
上一篇: mysql常用的hint
下一篇: MySQL数据库负载很高的解决办法
本木生
博客等级 码龄14年 18粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值