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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/51615627

系统性能调优尤其是mysql数据库性能调优一个主要依据就是慢查询日志了。原来在ubantu 或centos 上有一个强大工具就是 percona toolkit,那么在mac 上如何使用pt-query-digest呢?

下载 percona toolkit

访问 , 采用源代码安装,下载最新稳定版2.2.7。

这里写图片描述

安装 并预先填好安装过程中的那些坑

进入下载的目录,开练:

$ tar xvfz percona-toolkit-2.2.7.tar.gz
$ cd percona-toolkit-2.2.17

注意一下perl 的版本要是5.18以上。

Perl,多年前热衷的语言,呵呵。试运行一下 perl Makefile.PL 看一下输出:

Checking if your kit is complete...

Looks good

Warning: prerequisite DBD::mysql 3 not found.

Warning: prerequisite DBI 1.46 not found.

Warning: NAME must be a package name

Generating a Unix-style Makefile

Writing Makefile for percona-toolkit

Writing MYMETA.yml and MYMETA.json

关注一下这几个warning,都可能是坑,尤其是DBD和DBI,没有它们,怎么实现数据库连接呢? 安装一下perl 的相关模块吧。

$ perl -MCPAN -e "install DBI”
$ perl -MCPAN -e "install DBD::mysql"

注意,如果出现了permission 问题,要用一下sudo.

现在,可以安装 percona toolkit了,尤其主要是指定 mysql_config 的PATH。

$ perl Makefile.PL --mysql_config=/local/mariadb/bin/mysql_config

然后,就是熟知的 make, make install 了,至此,安装完成。

检验与使用

在perl 中检验安装的模块,有两种方法:一种是执行命令perldoc perllocal,一种是执行 instmodsh,简单起见,这里用instmodsh,运行及输出如下:

$ instmodsh
Available commands are:
   l            - List all installed modules
   m <module>   - Select a module
   q            - Quit the program
cmd? l
Installed modules are:
   Authen::SASL
   CGI
   Cwd
   DBD::mysql
   DBI
   Digest::HMAC
   Digest::SHA1
   Error
   File::Slurp::Tiny
   GSSAPI
   Git
   HTML::Parser
   HTML::Tagset
   IO::Socket::SSL
   Locale::gettext
   Net::LibIDN
   Net::SMTP::SSL
   Net::SSLeay
   ...

现在,就可以在Mac 上象其它Linux 平台那样使用percona toolkit 了。 回到目标主题,分析慢查询:

$ pt-query-digest ~/mysql-slow.log

远程执行会有的慢,这里是将慢查询日志拖到本地运行的,可以得到比较有价值的分析结果。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
SQL 关系型数据库 MySQL
大厂面试官:聊下 MySQL 慢查询优化、索引优化?
MySQL慢查询优化、索引优化,是必知必备,大厂面试高频,本文深入详解,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验分享。
大厂面试官:聊下 MySQL 慢查询优化、索引优化?
|
5天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化以及慢查询优化
通过本文的介绍,希望您能够深入理解MySQL索引优化和慢查询优化的方法,并在实际应用中灵活运用这些技术,提升数据库的整体性能。
42 18
|
4天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化以及慢查询优化
通过本文的介绍,希望您能够深入理解MySQL索引优化和慢查询优化的方法,并在实际应用中灵活运用这些技术,提升数据库的整体性能。
16 7
|
3天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化与慢查询优化:原理与实践
通过本文的介绍,希望您能够深入理解MySQL索引优化与慢查询优化的原理和实践方法,并在实际项目中灵活运用这些技术,提升数据库的整体性能。
22 5
|
1天前
|
SQL 关系型数据库 MySQL
MySQL 窗口函数详解:分析性查询的强大工具
MySQL 窗口函数从 8.0 版本开始支持,提供了一种灵活的方式处理 SQL 查询中的数据。无需分组即可对行集进行分析,常用于计算排名、累计和、移动平均值等。基本语法包括 `function_name([arguments]) OVER ([PARTITION BY columns] [ORDER BY columns] [frame_clause])`,常见函数有 `ROW_NUMBER()`, `RANK()`, `DENSE_RANK()`, `SUM()`, `AVG()` 等。窗口框架定义了计算聚合值时应包含的行。适用于复杂数据操作和分析报告。
28 11
|
1月前
|
SQL 关系型数据库 MySQL
MySQL慢查询优化、索引优化、以及表等优化详解
本文详细介绍了MySQL优化方案,包括索引优化、SQL慢查询优化和数据库表优化,帮助提升数据库性能。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
MySQL慢查询优化、索引优化、以及表等优化详解
|
28天前
|
SQL 关系型数据库 MySQL
【赵渝强老师】MySQL的慢查询日志
MySQL的慢查询日志用于记录执行时间超过设定阈值的SQL语句,帮助数据库管理员识别并优化性能问题。通过`mysqldumpslow`工具可查看日志。本文介绍了如何检查、启用及配置慢查询日志,并通过实例演示了慢查询的记录与分析过程。
109 3
|
2月前
|
项目管理 iOS开发 UED
Mac用户必备的任务管理软件!三款高效工具推荐
本文介绍了Mac系统在项目管理和任务管理方面的独特优势,包括用户体验、系统生态整合和隐私安全等方面。针对Mac用户的需求,推荐了三款高效任务管理软件:板栗看板、OmniFocus和Things 3。板栗看板适合团队协作,OmniFocus适合高需求的个人用户,Things 3则以简洁美观的界面和易用性著称。文章详细分析了每款软件的特点和适用场景,帮助用户选择最合适的工具。
79 6
|
2月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1684 14
|
2月前
|
iOS开发 索引 MacOS
mac文件搜索工具
【10月更文挑战第11天】