zoukankan      html  css  js  c++  java
  • percona-toolkit工具包的安装和初步使用

    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-toolkitrpm安装方式

    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 2003 -c sizes -g filename
    ./pt-ioprofile -p 2003 -c times -g filename
    ./pt-ioprofile -p 2003 -c count -g filename
    #2003为mysql进程id

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

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

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

  • 相关阅读:
    poj3669 广搜
    检索所有课程都选修的的学生的学号与姓名
    UVA10160 Servicing Stations
    uva11205 The broken pedometer 子集生成
    poj1101 the game 广搜
    poj3009 Curling 2.0 深搜
    poj 1564 Sum It Up 搜索
    HDU 2268 How To Use The Car (数学题)
    codeforces 467C George and Job(简单dp,看了题解抄一遍)
    HDU 2267 How Many People Can Survive(广搜,简单)
  • 原文地址:https://www.cnblogs.com/hanxiaohui/p/8513764.html
Copyright © 2011-2022 走看看