linux下percona-toolkit工具包的安装和使用(超详细版)
一.检查和安装与Perl相关的模块
PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境。
依赖包检查命令为:
rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL

如果有依赖包确实,可以使用下面的命令安装:
yum install perl-DBI
yum install perl-DBD-MySQL
yum install perl-Time-HiRes
yum install perl-IO-Socket-SSL
二.下载和安装percona toolkit的包
1、下载和安装percona toolkit的包
参照:https://www.percona.com/doc/percona-toolkit/3.0/installation.html#installing-percona-toolkit-on-red-hat-or-centos
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
2、查看可以安装的包
yum list | grep percona-toolkit

3、安装percona-toolkit工具包
yum install percona-toolkit
4、出现complete!即表示安装成功:

5、安装后,可以通过下面的命令确认是否安装成功:
# pt-query-digest --help
# pt-table-checksum --help
如果命令提示可以正常显示,则说明pt工具已经正常安装和使用了。
有的32个命令,可以分为7大类
|
工具类别 |
工具命令 |
工具作用 |
备注 |
|
开发类 |
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新增命令 |
上面是pt工具各个命令的基本功能介绍,可以使用 command --help 来查看每个命令的具体作用和使用方法;
有的命令也可以使用 man command 命令查询相关命令详细信息。
目前使用的比较多的命令是: pt-query-digest ,pt-kill等命令。
加字段例子:
/usr/local/bin/pt-online-schema-change --user=用户名 --password=密码 --host=127.0.0.1 --port=端口号 --charset=utf8 --nodrop-old-table --alter="modify media_code varchar(64) DEFAULT NULL COMMENT '当前视频编码' " D=ad_api,t=t_ad_req_log --exec
注意:若是安转过程中,遇到yum命令不可用,请替换镜像源,我这里是替换成163的镜像源:
命令如下:
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bk
ll
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
vi /etc/resolv.conf
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum makecache
linux下percona-toolkit工具包的安装和使用(超详细版)的更多相关文章
- Linux下实现普通用户免密码登录【超详细】
现有需求,需要把所有服务器的root和密码登录都禁用,只开放普通用户登录,这时需要给普通用户配置秘钥文件,实现无密码登录 如果普通用户需要root权限,在root用户下执行命令:visudo [roo ...
- Linux下批量管理工具pssh安装和使用
Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...
- Linux下通过源码编译安装程序
本文简单的记录了下,在linux下如何通过源码安装程序,以及相关的知识.(大神勿喷^_^) 一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件: ...
- Linux下非root用户如何安装软件
Linux下非root用户如何安装软件 从windows转移到Linux的用户最开始总会有各种不适,因为这种不适最终放弃linux的不在少数.对于这类人只能说可惜,还没有领略到linux的美好就过早放 ...
- linux下Redis与phpredis扩展安装
++++++++++++++++++++++++++++++++++++++++++++++linux下Redis与phpredis扩展安装++++++++++++++++++++++++++++++ ...
- LINUX下中文语言包的安装(转)
在安装盘上已经有各种语言包了,我们只需要找到他们,并安装就可以了.中文的是fonts-chinese-3.02-9.6.el5.noarch.rpmfonts-ISO8859-2-75dpi-1.0- ...
- linux下使用非root账号安装zabbix-client
linux下使用非root账号安装zabbix-client使用非root账号rusky登录:[rusky@testServer]#tar zxvf zabbix-2.4.5.tar.gz #cd z ...
- [转]在linux下如何判断是否已经安装某个软件?软件安装在哪个目录
<1>在linux下如何判断是否已经安装某个软件? ++++++++++++++++++++++++++++++++++++++++++ rpm -qa|grep 软件包 ++++++++ ...
- linux下各安装包的安装方法
<转>linux下各安装包的安装方法 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root ...
- linux下搭建lamp环境以及安装swoole扩展
linux下搭建lamp环境以及安装swoole扩展 一.CentOS 6.5使用yum快速搭建LAMP环境 准备工作:先更新一下yum源 我安装的环境是:apache2.2.15+mysql5 ...
随机推荐
- iOS开发寻找最近公共view
新技能 #pragma mark --寻找最近公共view + (NSArray *)superViews:(UIView *)view{ if (view==nil) { return @[]; } ...
- 性能测试分享:Jmeter的api监控工具解决方案
性能测试分享:Jmeter的api监控工具解决方案 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询q ...
- 2.Maven 使用
1 Maven使用 1.1 编写POM 就像Make的Makefile,Ant的build.xml一样,Maven项目的核心是pom.xml. 首先创建一个名为hello-world的文件夹(本书中各 ...
- sqoop 操作从hdfs 导入到mysql中语句
将hdfs下/dw/dms/usr_trgt下的文件导入到mysql中test数据库下usr_trgt表中 sqoop-export --connect jdbc:mysql://mysqlDB: ...
- c++设计成员变量可动态调整的动态类结构
本文主要介绍一下如何使用c++设计成员变量可动态调整的抽象动态类结构.首先介绍一下项目中以前使用的一种类结构:静态类结构 1.静态类结构 很多时候,在项目开发中设计类结构时,我们往往有一种简单.直接的 ...
- jQuery中append(),prepend()与after(),before()的区别
在jQuery中,添加元素有append(),prepend和 after(),before()两种共四个. 根据字面意思我们可以看出他们分别是追加,添加和之前,之后,意思相近.同时他们又都有添加元素 ...
- [Linux] PHP程序员玩转Linux系列-使用supervisor实现守护进程
1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 4.PHP程序员玩转L ...
- webx request注入单例增强实现
由于在spring中request对象的scope限制导致了request对象无法直接注入到单例bean中,所以webx对其进行了增强实现,达到单例注入的目的. 实现原理大致如下: 1 启动时注册全局 ...
- 在ASP.NET MVC4中配置Castle
---恢复内容开始--- Castle是针对.NET平台的一个非常优秀的开源项目,重点是开源的哦.它在NHibernate的基础上进一步封装,其原理基本与NHibernate相同,但它较好地解决NHi ...
- Ranklib源码剖析--LambdaMart
Ranklib是一套优秀的Learning to Rank领域的开源实现,其中有实现了MART,RankNet,RankBoost,LambdaMart,Random Forest等模型.其中由微软发 ...