Percona Toolkit 神器全攻略

Percona Toolkit 神器全攻略

file

Percona Toolkit 神器全攻略系列共八篇分为

文章名文章名
Percona Toolkit 神器全攻略Percona Toolkit 神器全攻略(实用类)
Percona Toolkit 神器全攻略(配置类)Percona Toolkit 神器全攻略(监控类)
Percona Toolkit 神器全攻略(系统类)Percona Toolkit 神器全攻略(开发类)
Percona Toolkit 神器全攻略(复制类)Percona Toolkit 神器全攻略(性能类)

全文约定:$为命令提示符、greatsql>为GreatSQL数据库提示符。在后续阅读中,依据此约定进行理解与操作

Percona Toolkit 简介

Percona Toolkit简称(PT工具),是一组高级命令行工具,用于管理MySQL/GreatSQL的工具。可以用它来执行各种难以手动执行的MySQL/GreatSQL和系统任务。其功能包括检查主从复制的数据一致性、检查重复索引、定位IO占用高的表文件、在线DDL等,DBA熟悉掌握PT工具后将极大提高工作效率。

本系列只介绍和探讨Percona Toolkit中针对MySQL/GreatSQL数据库的实用工具

Percona Toolkit 安装

本系列所使用环境如下

名称配置
操作系统Linux myarch 6.6.3-arch1-1 x86_64 GNU/Linux
GNU Libcldd (GNU libc) 2.38
数据库GreatSQL 8.0.32-25, Release 25, Revision 79f57097e3f

使用包管理器安装

  • 对于 Debian 或 Ubuntu:

    $ sudo apt-get install percona-toolkit
  • 对于 RHEL 或 CentOS:

     $ sudo yum install percona-toolkit

包管理器安装较为简单,这里就不做示范

使用TAR包安装

前往➥https://www.percona.com/downloads,选择合适的版本下载Percona Toolkit

选择合适自己的CPU架构和操作系统版本Percona Toolkit包

file

创建文件夹pt,将下载的安装包保存于此,并检查sha256sum码,确保完整性

$ mkdir /usr/local/pt
$ sha256sum -c percona-toolkit-3.5.7_x86_64.tar.gz.sha256sum
percona-toolkit-3.5.7_x86_64.tar.gz: OK

解压文件,并添加到环境变量

$ tar -xvf percona-toolkit-3.5.7_x86_64.tar.gz
$ echo 'export PATH=/usr/local/pt/percona-toolkit-3.5.7/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile

随机选择一个工具查看版本号,确认安装成功

$ pt-online-schema-change --version
pt-online-schema-change 3.5.7

使用RPM包安装

以下示范环境为 Centos7 - X86_64架构 - ldd (GNU libc) 2.17

下载好3.5.7版本的Centos7 RPM包

$ ls
percona-toolkit-3.5.7-1.el7.x86_64.rpm

使用rpm命令安装Percona Toolkit,如果此时有报缺失依赖,用YUM安装即可

$ rpm -ivh --nodeps percona-toolkit-3.5.7-1.el7.x86_64.rpm

随机选择一个工具查看版本号,确认安装成功

$ pt-online-schema-change --version
pt-online-schema-change 3.5.7

Percona Toolkit 包含的工具

3.5.7版本Percona Toolkit工具拥有39个工具,将这39个工具分为七大类(实用类、配置类、监控类、系统类、开发类、复制类、性能类)

$ ls
pt-align                  pt-fingerprint           pt-mext                  pt-query-digest    pt-summary
pt-archiver               pt-fk-error-logger       pt-mongodb-index-check   pt-secure-collect  pt-table-checksum
pt-config-diff            pt-galera-log-explainer  pt-mongodb-query-digest  pt-show-grants     pt-table-sync
pt-deadlock-logger        pt-heartbeat             pt-mongodb-summary       pt-sift            pt-table-usage
pt-diskstats              pt-index-usage           pt-mysql-summary         pt-slave-delay     pt-upgrade
pt-duplicate-key-checker  pt-ioprofile             pt-online-schema-change  pt-slave-find      pt-variable-advisor
pt-fifo-split             pt-k8s-debug-collector   pt-pg-summary            pt-slave-restart   pt-visual-explain
pt-find                   pt-kill                  pt-pmp                   pt-stalk`

实用类

工具命令工具用途
pt-align将其它工具输出内容与列对齐
pt-archiver将表中的行存档到另一个表或文件中
pt-find查找表并执行命令
pt-fingerprint将查询转成密文
pt-killKill掉符合条件的SQL
pt-k8s-debug-collector从 k8s/OpenShift 集群收集调试数据(日志、资源状态等)
pt-secure-collect收集、清理、打包和加密数据

配置类

工具命令工具描述
pt-config-diff比较数据库配置文件和参数
pt-mysql-summary对GreatSQL/MySQL配置和STATUS进行汇总
pt-variable-advisor分析参数,并提出建议

监控类

工具命令工具描述
pt-deadlock-logger提取和记录GreatSQL/MySQL死锁
pt-fk-error-logger提取和记录外键信息
pt-mext并行查看STATUS样本信息
pt-query-digest分析查询日志,并产生报告
pt-mongodb-summary收集有关 MongoDB 集群的信息
pt-pg-summary收集有关 PostgreSQL 集群的信息

系统类

工具命令工具描述
pt-diskstats查看系统磁盘状态
pt-fifo-split模拟切割文件并输出
pt-ioprofile查询进程IO并打印一个IO活动表
pt-sift浏览由pt-stalk创建的文件
pt-stalk出现问题时,收集诊断数据
pt-summary收集和显示系统概况

开发类

工具命令工具描述
pt-duplicate-key-checker列出并删除重复的索引和外键
pt-online-schema-change在线修改表结构
pt-show-grants规范化和打印权限
pt-upgrade在多个服务器上执行查询,并比较不同

复制类

工具命令工具描述
pt-heartbeat监控GreatSQL/MySQL复制延迟
pt-slave-delay设定从落后主的时间
pt-slave-find查找和打印所有GreatSQL/MySQL复制层级关系
pt-slave-restart监控Salve错误,并尝试重启Salve
pt-table-checksum校验主从复制一致性
pt-table-sync高效同步表数据
pt-galera-log-explainer对多个Galera日志进行过滤、聚合和汇总

性能类

工具命令工具描述
pt-index-usage分析日志中索引使用情况,并出报告
pt-pmp查询结果跟踪,并汇总跟踪结果
pt-table-usage分析日志中查询并分析表使用情况
pt-visual-explain格式化执行计划
pt-mongodb-index-checkMongoDB 索引执行检查
pt-mongodb-query-digest通过聚合来自 MongoDB 查询分析器的查询来报告查询使用统计信息

接下来的章节中将对这七类的工具进行详细讲解 :)


Enjoy GreatSQL :)

关于 GreatSQL

GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。

相关链接: GreatSQL社区 Gitee GitHub Bilibili

GreatSQL社区:

image

社区有奖建议反馈: https://greatsql.cn/thread-54-1-1.html

社区博客有奖征稿详情: https://greatsql.cn/thread-100-1-1.html

(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)

技术交流群:

微信&QQ群:

QQ群:533341697

微信群:添加GreatSQL社区助手(微信号:wanlidbc )好友,待社区助手拉您进群。

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值