Percona-toolkit工具包系列文章
俗话说:工欲善其事,必先利其器!如果你是做MYSQL DBA或运维的,Percona-toolkit我相信这是你日常工作中必备的神器,能够高效的帮助您完成日常的工作;
如果有人说,没有用过,那么你可能是个假的DBA,不过没关系,从现在开始,我来帮助你一起学习Percona-toolkit工具包中相关的工具的使用方法以及使用场景;
Percona-toolkit工具包同percona-xtrabackup一样都是用Perl写的工具包,percona-toolkit工具包是一组高级的管理mysql的工具包集,可以用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,在生产环境中能极大的提高效率.
percona-toolkit是一组高级命令行工具的集合,可以查看当前服务的摘要信息,磁盘检测,分析慢查询日志,查找重复索引,实现表同步等等。
percona-toolkit下载地址:https://www.percona.com/downloads/percona-toolkit/LATEST/
开始使用之前,当然要先安装喽;
安装依赖包
yum install perl perl-DBI perl-DBD-MySQL perl-IO-Socket-SSL perl-Time-HiRes perl-devel -y
安装percona-toolkit工具包
[root@VM_54_118_centos wjq-software]# tar zxvf percona-toolkit-3.0.12_x86_64.tar.gz [root@VM_54_118_centos wjq-software]# cd percona-toolkit-3.0.12/ [root@VM_54_118_centos percona-toolkit-3.0.12]# ll total 136 drwxrwxr-x 2 500 500 4096 Sep 13 20:20 bin -rw-rw-r-- 1 500 500 51327 Sep 13 20:20 Changelog -rw-rw-r-- 1 500 500 7142 Sep 13 20:20 CONTRIBUTE.md -rw-rw-r-- 1 500 500 224 Sep 13 20:20 CONTRIBUTING.md -rw-rw-r-- 1 500 500 18092 Sep 13 20:20 COPYING -rw-rw-r-- 1 500 500 129 Sep 13 20:20 docker-compose.yml drwxrwxr-x 2 500 500 4096 Sep 13 20:20 docs -rw-rw-r-- 1 500 500 8346 Sep 13 20:20 Gopkg.lock -rw-rw-r-- 1 500 500 1477 Sep 13 20:20 Gopkg.toml -rw-rw-r-- 1 500 500 1527 Sep 13 20:20 INSTALL drwxrwxr-x 2 500 500 4096 Sep 13 20:20 lib -rw-rw-r-- 1 500 500 568 Sep 13 20:20 Makefile.PL -rw-rw-r-- 1 500 500 809 Sep 13 20:20 MANIFEST -rw-rw-r-- 1 500 500 1692 Sep 13 20:20 README.md [root@VM_54_118_centos percona-toolkit-3.0.12]# cd percona-toolkit-3.0.9/ [root@VM_54_118_centos percona-toolkit-3.0.12]# perl Makefile.PL [root@VM_54_118_centos percona-toolkit-3.0.12]# make && make install
安装成功,接下来就是工具包中各工具的使用,下面就先介绍一下相关工具及作用,针对于具体的使用,会在接下来的文章中,详细的介绍,欢迎关注博主接下来的系列文章;
工具命令及作用
工具类别 | 工具命令 | 工具作用 | 备注 |
开发类 | pt-duplicate-key-checker | 列出并删除重复的索引和外键 | – |
pt-online-schema-change | 在线修改表结构 | – | |
pt-query-advisor | 分析查询语句,并给出建议,有bug | 已废弃 | |
pt-show-grants | 规范化和打印权限 | – | |
pt-upgrade | 在多个服务器上执行查询,并比较不同 | – | |
性能类 | pt-index-usage | 分析日志中索引使用情况,并出报告 | – |
pt-pmp | 为查询结果跟踪,并汇总跟踪结果 | – | |
pt-visual-explain | 格式化执行计划 | – | |
pt-table-usage | 分析日志中查询并分析表使用情况 | pt 2.2新增命令 | |
配置类 | pt-config-diff | 比较配置文件和参数 | – |
pt-mysql-summary | 对mysql配置和status进行汇总 | – | |
pt-variable-advisor | 分析参数,并提出建议 | – | |
监控类 | pt-deadlock-logger | 提取和记录mysql死锁信息 | – |
pt-fk-error-logger | 提取和记录外键信息 | – | |
pt-mext | 并行查看status样本信息 | – | |
pt-query-digest | 分析查询日志,并产生报告 | 常用命令 | |
pt-trend | 按照时间段读取slow日志信息 | 已废弃 | |
复制类 | pt-heartbeat | 监控mysql复制延迟 | – |
pt-slave-delay | 设定从落后主的时间 | – | |
pt-slave-find | 查找和打印所有mysql复制层级关系 | – | |
pt-slave-restart | 监控salve错误,并尝试重启salve | – | |
pt-table-checksum | 校验主从复制一致性 | – | |
pt-table-sync | 高效同步表数据 | – | |
系统类 | pt-diskstats | 查看系统磁盘状态 | – |
pt-fifo-split | 模拟切割文件并输出 | – | |
pt-summary | 收集和显示系统概况 | – | |
pt-stalk | 出现问题时,收集诊断数据 | – | |
pt-sift | 浏览由pt-stalk创建的文件 | pt 2.2新增命令 | |
pt-ioprofile | 查询进程IO并打印一个IO活动表 | pt 2.2新增命令 | |
实用类 | pt-archiver | 将表数据归档到另一个表或文件中 | – |
pt-find | 查找表并执行命令 | – | |
pt-kill | Kill掉符合条件的sql | 常用命令 | |
pt-align | 对齐其他工具的输出 | pt 2.2新增命令 | |
pt-fingerprint | 将查询转成密文 | pt 2.2新增命令 |
接下来的文章,会针对每一个工具的使用详细介绍其使用方法和使用场景,敬请关注。。。