percona-toolkit工具包的安装和初步使用

原文地址:http://blog.csdn.net/yumushui/article/details/42919601
一、percona-toolkit工具简介

percona-toolkit简称“PT工具”,是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括:

检查master和slave数据的一致性

有效地对记录进行归档

查找重复的索引

对服务器信息进行汇总

分析来自日志和tcpdump的查询

当系统出问题的时候收集重要的系统信息

percona-toolkit源自Maatkit 和Aspersa工具,这两个工具是管理mysql的最有名的工具,现在Maatkit工具已经不维护了,请大家还是使用percona-toolkit吧!这些工具主要包括开发、性能、配置、监控、复制、系统、实用六大类,作为一个优秀的DBA,里面有的工具非常有用,如果能掌握并加以灵活应用,将能极大的提高工作效率。

二、percona-toolkit安装步骤与过程

我的环境是CentOS 6.5系统+ MySQL 5.5.35,可以按照下面的步骤安装pt工具。

1.检查和安装与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

2.percona-toolkit工具的下载和安装

pt工具目前最新版本为 2.2.12 ,可以通过下面的连接下载:

http://download.csdn.net/detail/yumushui/8379565

也可以可以在官方下载最新版本:

wget percona.com/get/percona-toolkit.tar.gz

wget percona.com/get/percona-toolkit.rpm

A. percona-toolkit的rpm安装方式

rpm -ivh perl-TermReadKey-2.30-1.el5.rf.x86_64.rpm

rpm -ivh percona-toolkit-2.1.1-1.noarch.rpm

注意:需要安装Term::ReadKey 包,否则会报perl(Term::ReadKey) >= 2.10 is needed by percona-toolkit-2.1.1-1.noarch错误

B. percona-toolkit的编译安装方式(可用)

tar xzvf percona-toolkit-2.1.1.tar.gz

cd percona-toolkit-2.1.1

perl Makefile.PL

make

make test

make install

安装后,可以通过下面的命令确认是否安装成功:

# pt-query-digest --help

# pt-table-checksum --help

如果命令提示可以正常显示,则说明pt工具已经正常安装和使用了

三、percona-toolkit命令的整体分类和作用概述

在最新的 pt 2.2.12 版本安装完毕后,一共有如下命令:

# pwd 
/usr/local/percona-toolkit-2.2.12/bin 

# ll 
total 5352 
-rwxrwxr-x 1 1000 1000 40852 Nov 11 21:36 pt-align 
-rwxrwxr-x 1 1000 1000 247292 Nov 11 21:36 pt-archiver 
-rwxrwxr-x 1 1000 1000 166888 Nov 11 21:36 pt-config-diff 
-rwxrwxr-x 1 1000 1000 164033 Nov 11 21:36 pt-deadlock-logger 
-rwxrwxr-x 1 1000 1000 163722 Nov 11 21:36 pt-diskstats 
-rwxrwxr-x 1 1000 1000 166921 Nov 11 21:36 pt-duplicate-key-checker 
-rwxrwxr-x 1 1000 1000 49262 Nov 11 21:36 pt-fifo-split 
-rwxrwxr-x 1 1000 1000 148347 Nov 11 21:36 pt-find 
-rwxrwxr-x 1 1000 1000 66409 Nov 11 21:36 pt-fingerprint 
-rwxrwxr-x 1 1000 1000 131003 Nov 11 21:36 pt-fk-error-logger 
-rwxrwxr-x 1 1000 1000 190538 Nov 11 21:36 pt-heartbeat 
-rwxrwxr-x 1 1000 1000 224641 Nov 11 21:36 pt-index-usage 
-rwxrwxr-x 1 1000 1000 32276 Nov 11 21:36 pt-ioprofile 
-rwxrwxr-x 1 1000 1000 245236 Nov 11 21:36 pt-kill 
-rwxrwxr-x 1 1000 1000 21684 Nov 11 21:36 pt-mext 
-rwxrwxr-x 1 1000 1000 100494 Nov 11 21:36 pt-mysql-summary 
-rwxrwxr-x 1 1000 1000 368714 Nov 11 21:36 pt-online-schema-change 
-rwxrwxr-x 1 1000 1000 24525 Nov 11 21:36 pt-pmp 
-rwxrwxr-x 1 1000 1000 516529 Nov 11 21:36 pt-query-digest 
-rwxrwxr-x 1 1000 1000 72384 Nov 11 21:36 pt-show-grants 
-rwxrwxr-x 1 1000 1000 37651 Nov 11 21:36 pt-sift 
-rwxrwxr-x 1 1000 1000 144190 Nov 11 21:36 pt-slave-delay 
-rwxrwxr-x 1 1000 1000 125951 Nov 11 21:36 pt-slave-find 
-rwxrwxr-x 1 1000 1000 178193 Nov 11 21:36 pt-slave-restart 
-rwxrwxr-x 1 1000 1000 69227 Nov 11 21:36 pt-stalk 
-rwxrwxr-x 1 1000 1000 89799 Nov 11 21:36 pt-summary 
-rwxrwxr-x 1 1000 1000 409966 Nov 11 21:36 pt-table-checksum 
-rwxrwxr-x 1 1000 1000 394568 Nov 11 21:36 pt-table-sync 
-rwxrwxr-x 1 1000 1000 222447 Nov 11 21:36 pt-table-usage 
-rwxrwxr-x 1 1000 1000 328098 Nov 11 21:36 pt-upgrade 
-rwxrwxr-x 1 1000 1000 175665 Nov 11 21:36 pt-variable-advisor 
-rwxrwxr-x 1 1000 1000 101492 Nov 11 21:36 pt-visual-explain 

# ls | wc 
32 32 455

现有的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-ioprofile使用

./pt-ioprofile -p  -c sizes -g filename
./pt-ioprofile -p -c times -g filename
./pt-ioprofile -p -c count -g filename
#2003为mysql进程id

上面是pt工具各个命令的基本功能介绍,可以使用 command --help 来查看每个命令的具体作用和使用方法;

有的命令也可以使用 man command 命令查询相关命令详细信息。

目前使用的比较多的命令是: pt-query-digest ,pt-kill等命令

percona-toolkit工具包的安装和初步使用的更多相关文章

  1. Centos 安装Percona Toolkit工具集

    1.下载 下载地址:   https://www.percona.com/downloads/percona-toolkit/LATEST/ [root@bogon ~]# wget https:// ...

  2. linux下percona-toolkit工具包的安装和使用(超详细版)

    一.检查和安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境. 依赖包检查命令为: rpm -qa perl-DBI perl-DBD-MySQL perl ...

  3. percona-toolkit(pt-online-schema-change)工具包的安装和使用

    1.下载和安装percona toolkit的包 #yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/ ...

  4. centos7 安装percona-toolkit工具包的安装和使用

    一.检查和安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境. 依赖包检查命令为: rpm -qa perl-DBI perl-DBD-MySQL perl ...

  5. 【Linux】percona-toolkit工具包的安装

    一.检查和安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境. 依赖包检查命令为: rpm -qa perl-DBI perl-DBD-MySQL perl ...

  6. percona-toolkit工具包的安装和使用

    1.安装与Perl相关的模块 PT工具是使用Perl语言编写和执行的,所以需要系统中有Perl环境 # yum install -y perl perl-devel perl-Time-HiRes p ...

  7. Percona Toolkit mysql辅助利器

    1 PT介绍 Percona Toolkit简称pt工具—PT-Tools,是Percona公司开发用于管理MySQL的工具,功能包括检查主从复制的数据一致性.检查重复索引.定位IO占用高的表文件.在 ...

  8. Percona Toolkit工具集介绍

    部署mysql工具是一个非常重要的部分,所以工具的可靠性和很好的设计非常重要.percona toolkit是一个有30多个mysql工具的工具箱.兼容mysql,percona server,mar ...

  9. Percona Toolkit工具连接MySQL 8报错的解决方案

    使用Percona Toolkit的工具连接MySQL 8.x数据库时,会遇到类似"failed: Plugin caching_sha2_password could not be loa ...

随机推荐

  1. Linux0.11内核源码——内核态进程切换的改进

    本来想自己写的,但是发现了一篇十分优秀的博客 https://www.cnblogs.com/tradoff/p/5734582.html system_call的源码解析:https://blog. ...

  2. Fraction Comparision

    题目链接 题意:输入x,a,y,b求x/a和y/b的大小,范围long long int 思路:因为不想用精度,嫌麻烦,所以用了个巧方法.先求x/a和y/b整形的大小,如果相等,再求(x%a)*b和( ...

  3. About Intel® Processor Numbers

    http://www.intel.com/content/www/us/en/processors/processor-numbers.html About Intel® Processor Numb ...

  4. 103、Linux 编译 Kaldi 语音识别工具

    由于这个开源的语音识别工具Kaldi只能在Linux下面成功编译, 所以这一小节来写如何成功地在Linux下面编译Kaldi工具 (1)第一步,去github 上面把 Kaldi下载下来 git cl ...

  5. https中引用http

    https里引用http不安全,会报错 解决方案 1.可以部署在http中,http中引用https不会存在安全问题报错 2.https中引用https,把需要引用的http部署成https

  6. 目前写出的bug

    要检测p->next 与p都不=NULL while(p->next!=NULL &&p!=NULL) 会导致访问access NULL pointer的runtime错误 ...

  7. python 装饰器 第七步:带有参数的装饰器

    #第七步:带有参数的装饰器 #两个基本函数用同一个装饰器装饰 def outer(arg): print(arg) #这是装饰器的代码 def kuozhan(func): print(func) # ...

  8. Spring Boot 支持 HTTPS 如此简单,So easy!

    这里讲的是 Spring Boot 内嵌式 Server 打 jar 包运行的方式,打 WAR 包部署的就不存在要 Spring Boot 支持 HTTPS 了,需要去外部对应的 Server 配置. ...

  9. C#简单的文件依赖缓存的使用

    一,FileCache.aspx页面 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=& ...

  10. 修改bug 提交出错:操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null

    提交出错:操作失败: 无法更改关系,因为一个或多个外键属性不可以为 null.对关系作出更改后,会将相关的外键属性设置为 null 值.如果外键不支持 null 值,则必须定义新的关系,必须向外键属性 ...