Percona Toolkit 神器全攻略
Percona Toolkit 神器全攻略
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 Libc | ldd (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包
创建文件夹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-kill | Kill掉符合条件的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-check | MongoDB 索引执行检查 |
pt-mongodb-query-digest | 通过聚合来自 MongoDB 查询分析器的查询来报告查询使用统计信息 |
接下来的章节中将对这七类的工具进行详细讲解 :)
Enjoy GreatSQL :)
关于 GreatSQL
GreatSQL是适用于金融级应用的国内自主开源数据库,具备高性能、高可靠、高易用性、高安全等多个核心特性,可以作为MySQL或Percona Server的可选替换,用于线上生产环境,且完全免费并兼容MySQL或Percona Server。
相关链接: GreatSQL社区 Gitee GitHub Bilibili
GreatSQL社区:
社区有奖建议反馈: https://greatsql.cn/thread-54-1-1.html
社区博客有奖征稿详情: https://greatsql.cn/thread-100-1-1.html
(对文章有疑问或者有独到见解都可以去社区官网提出或分享哦~)
技术交流群:
微信&QQ群:
QQ群:533341697
微信群:添加GreatSQL社区助手(微信号:wanlidbc
)好友,待社区助手拉您进群。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MySQL全文索引源码剖析之Insert语句执行过程
本文分享自华为云社区《MySQL全文索引源码剖析之Insert语句执行过程》 ,作者:GaussDB 数据库。 1. 背景介绍 全文索引是信息检索领域的一种常用的技术手段,用于全文搜索问题,即根据单词,搜索包含该单词的文档,比如在浏览器中输入一个关键词,搜索引擎需要找到所有相关的文档,并且按相关性排好序。 全文索引的底层实现是基于倒排索引。所谓倒排索引,描述的是单词和文档的映射关系,表现形式为(单词,(单词所在的文档,单词在文档中的偏移)),下文的示例将会展示全文索引的组织方式: mysql> CREATE TABLE opening_lines ( id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY, opening_line TEXT(500), author VARCHAR(200), title VARCHAR(200), FULLTEXT idx (opening_line) ) ENGINE=InnoDB; mysql> INSERT INTO opening_lines(opening_lin...
- 下一篇
年薪百万的程序员都在用的摸鱼方式……
随着信息技术的不断发展,许多传统的工作流程正在向自动化方向迅速转变。在过去,开发人员在完成代码编写后,需要通过手动执行一系列操作来将代码部署到生产环境中。 这看似简单,但在实际操作过程中,不仅容易出现各种人为失误,还会消耗开发人员大量的时间和精力。此外,一旦出现问题就需要进行回滚操作,这就意味着上述步骤需要再次执行直至成功。 作为一个老测试人,这种心酸痛苦难以言表。为了解决这些问题,自动化部署技术逐渐崭露头角。自动部署,简单来说,从代码的版本控制、构建、测试到最终的发布,这些复杂繁琐的步骤都是自动完成的,不需要人工介入。 上午就已经把工作做完了,才心血来潮想和大家分享一下我的“摸鱼”技巧。本文将介绍自动化部署的优势和实践。通过了解自动化部署的基本原理和工具,帮助大家争取实现高效、可靠的软件发布流程。 一、为什么自动化部署如此重要 1、及时反馈,提高发布频率 自动化部署大大简化了部署过程,不仅可以快速将新特性和修复推送给用户,还可以获得用户的及时反馈。通过快速反馈,团队可以立即了解产品的改变是否有效、是否满足用户的需求,再根据用户的反馈进行调整。Facebook移动应用的更新频率非常高...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS关闭SELinux安全模块
- CentOS7,8上快速安装Gitea,搭建Git服务器