percona-toolkit的安装及简单介绍
MySQL数据库是轻量级、开源数据库的佼佼者。其功能和管理,健壮性与Oracle相比还是有相当的差距。因此有非常多功能强大第三方的衍生产品,如percona-toolkit,XtraBackup等等。percona-toolkit是一组高级命令行工具的集合,能够查看当前服务的摘要信息。磁盘检測。分析慢查询日志,查找反复索引,实现表同步等等。
这个工具套件对DBA及运维人员着实不可多得。本文简要描写叙述这个工具的安装及其工具的大致介绍。
1、percona-toolkit的主要功能
Verify MySQL replication integrity by checking master and replica data consistency
Efficiently archive rows
Find duplicate indexes
Summarize MySQL servers
Analyze queries from logs and tcpdump
Collect vital system information when problems occur
2、安装需求及步骤
下载链接:http://www.percona.com/software/percona-toolkit
需求
* Perl v5.8 or newer
* Bash v3 or newer
* Core Perl modules like Time::HiRes
# perl --version |head -2 #检查perl版本号
# bash --version #检查bash版本号
高速安装步骤(缺省/usr/local/bin路径下。过程略)
# tar zxvf percona-toolkit-<version>.tar.gz
# cd percona-toolkit-<version>
# perl Makefile.PL (安装到非缺省文件夹 perl Makefile.PL PREFIX=${HOME})
# make
# make test
# make install
3、主要工具介绍
假设是非源代码安装或源代码安装是未指定路径,缺省情况下全部的pt相关的工具位于/usr/bin文件夹下,以pt-开头。
获取有关命令行的帮助信息。直接在shell提示符下输入命令行与--hlep就可以。如: /usr/bin/pt-upgrade --help
# ls -hltr /usr/bin/pt-*
pt-upgrade
#该命令主要用于对照不同mysql版本号下SQL运行的差异,通经常使用于升级前进行对照。
#会生成SQL文件或单独的SQL语句在每一个server上运行的结果、错误和警告信息等。
pt-online-schema-change
#功能为支持在线变更表构,且不锁定原表。不堵塞原表的DML操作。
#该特性与Oracle的dbms_redefinition在线重定义表原理基本相似。
pt-mysql-summary
#对连接的mysqlserver生成一份具体的配置情况以及sataus信息
#在尾部也提供当前实例的的配置文件的信息
pt-mext
#并行查看SHOW GLOBAL STATUS的多个样本的信息。
#pt-mext会运行你指定的COMMAND,并每次读取一行结果。把空行分割的内容保存到一个一个的暂时文件里,最后结合这些暂时文件并行查看结果。
pt-kill
#Kill掉符合指定条件mysql语句
pt-ioprofile
#pt-ioprofile的原理是对某个pid附加一个strace进程进行IO分析
pt-fingerprint
#用于生成查询指纹。主要将将sql查询生成queryID,pt-query-digest中的ID即是通过此工具来完毕的。
#相似于Oracle中的SQL_ID,涉及绑定变量。字面量等
pt-find
#用与查找mysql表并运行指定的命令。相似于find命令
pt-fifo-split
#模拟分割文件并通过管道传递给先入先出队列而不用真正的分割文件
pt-deadlock-logger
#用于监控mysqlserver上死锁并输出到日志文件,日志包括发生死锁的时间、死锁线程id、死锁的事务id、发生死锁时事务运行时间等具体信息。
pt-archiver
#将mysql数据库中表的记录归档到另外一个表或者文件
#该工具具仅仅是归档旧的数据,对线上数据的OLTP查询差点儿没有影响。
#能够将数据插入另外一台server的其它表中,也能够写入到一个文件里,方便使用load data infile命令导入数据。
pt-agent
#基于Percona Cloud的一个client代理工具
pt-visual-explain
#用于格式化explain的输出
pt-variable-advisor
#用于分析mysql系统变量可能存在的一些问题,能够据此评估有关參数的设置正确与否。
pt-stalk
#用于收集mysql数据库故障时的相关信息便于兴许诊断处理。
pt-slave-delay
#用于设定从server落后于主server的时间间隔。
#该命令行通过启动和停止复制sql线程来设置从落后于主指定时间。
pt-sift
#用于浏览pt-stalk生成的文件。
pt-show-grants
#将当前实例的用户权限全部输出。能够用于迁移数据库过程中重建用户。
pt-query-digest
#用于分析mysqlserver的慢查询日志,并格式化输出以便于查看和分析。
pt-pmp
#为查询程序运行聚合的GDB堆栈跟踪,先进性堆栈跟踪。然后将跟踪信息汇总。
pt-index-usage
#从log文件里读取查询语句,并用分析当前索引怎样被使用。
#完毕分析之后会生成一份关于索引没有被查询使用过的报告。能够用于分析报告考虑剔除没用的索引。
pt-heartbeat
#用于监控mysql复制架构的延迟。
#主要是通过在主库上的--update线程持续更新指定表上的一个时间戳,从库上--monitor线程或者--check线程检查主库更新的时间戳并与当前系统时间对照,得到延迟值。
pt-fk-error-logger
#将外键相关的错误信息记录到日志或表。
pt-duplicate-key-checker
#功能为从mysql表中找出反复的索引和外键,这个工具会将反复的索引和外键都列出来
#同一时候也能够生成对应的drop index的语句
pt-diskstats
#相似于iostat。打印磁盘io统计信息,可是这个工具是交互式而且比iostat更具体。能够分析从远程机器收集的数据。
pt-config-diff
#用于比較mysql配置文件和server变量
#至少2个配置源须要指定。能够用于迁移或升级前后配置文件进行对照
pt-align
#格式化输出
pt-slave-find
#连接mysql主server并查找其全部的从。然后打印出全部从server的层级关系。
pt-table-checksum
#用于校验mysql复制的一致性。
#该工具主要是高效的查找数据差异,假设存在差异性,能够通过pt-table-sync来解决。
percona-toolkit的安装及简单介绍的更多相关文章
- Kali安装zmap简单介绍
zmap是一个非常方便的扫描器,跟nmap和masscan一样,不过区别在于zmap他快,号称是一小时扫遍整个互联网.主要使用方式是TCP SYN scan.TCP connectscan.UDP s ...
- java web(一):tomcat服务器的安装和简单介绍,与eclipse关联
一:下载tomcat安装包和安装 这个百度一下就可以了. 安装完以后进入tomcat的安装路径查看 如图所示:有几个目录简单介绍下 bin目录: 存放运行tomcat服务器的相关命令. conf目 ...
- Postman安装与简单介绍
Postman简介 Postman是一个 Chrome 扩展,能提供强大的 Web API HTTP 请求调试功能.Postman能够发送任何类型的http请求,支持GET/PUT/POST/DELE ...
- postman插件的安装以及简单介绍
1:postman是干什么的? Postman官网上这么介绍的:“Modern software is built on APIs,Postman helps you develop APIs fas ...
- supervisor的安装与简单介绍
1,介绍 Supervisor是一个进程管理工具,官方的说法 用途就是有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要 ...
- rocksDB 安装问题简单介绍
前一段时间准备测试rocksdb,按照帖子和官网的例子,在安装过程中遇到一些问题.这里给出的是在Ubuntu下安装python使用的版本. 首先,要感谢这些帖子对我的帮助: 1:http://tech ...
- moogodb 安装及简单介绍
1,安装Moogodb 因为是windows 64位操作系统,直接到官网上下载.msi文件,下载完成后点击安装,点击同意协议之后,出现下面的对话框, Choose Setup Type, 就是选择安装 ...
- 性能测试三十八:Java性能分析神器-JProfiler安装和简单介绍
Jprofiler是一个重量级的工具,需要分别在服务器和windows都装客户端,会损耗性能,用于发现问题后排查问题,而不是常规的监控 JPROFILER工具下载地址:http://www.ej-te ...
- MongoDB安装和简单介绍
前面我们把nodejs的web开发入门说了,如今来说说数据库,一般搭配的数据库是mysql和mongodb,今天我们来说mongodb MongoDB是一个基于分布式文件存储的数据库,由C++语言编写 ...
随机推荐
- vue --- 脚手架初始化项目中配置文件webpack.base.conf.js代码含义
'use strict' //引入node path 中间件 可以获取到 path 路径的一些信息 const path = require('path') //引入utils工具模块 utils主要 ...
- POJ 1636 DFS+DP
思路: 先搜索出来如果选这个点 其它哪些点必须选 跑个背包就好了 //By SiriusRen #include <cstdio> #include <cstring> #in ...
- SQL解析XML文件
DECLARE @idoc int DECLARE @doc varchar(max) SET @doc ='<?xml version="1.0" encoding=&qu ...
- FreeBSD是UNIX系统的重要分支,其命令与Linux大部分通用,少部分是其特有。
FreeBSD是UNIX系统的重要分支,其命令与Linux大部分通用,少部分是其特有. 1: man 在线查询 man ls2: ls 查看目录与档案 ls -la3: ln 建立链接文件 ln -f ...
- C/C++(C++重载,默认参数,引用)
C++重载详解 重载就是同名而非同义,具体意义根据上下文的语境而言. 重载规则: 1,函数名相同. 2,参数个数不同,参数的类型不同,参数顺序不同,均可构成重载. 3,返回值类型不同则不可以构成重载. ...
- Scrapy请求传参
scrapy.Request(url=url, callback=self.parse_item, meta={'item': item}, headers=headers) url: 要请求的地址 ...
- Flask--Python中常用的Web框架之一
Web框架 什么是框架? 协助开发者快速开发web应程序的一套功能代码 开发者只需要按照框架约定要求,在指定位置写上自己的业务逻辑代码即可 为什么要用web框架? 使用web框架的主要目的就是避免重复 ...
- STM32CUBEF4 实现USB 虚拟串口
一.stm32cubemx 生成工程后USB转串口出现黄色感叹号的问题 如下图所示,在stm32cubemx工程中选择usb转串口功能Communication Device Class (Virtu ...
- Ajax核心对象——高速上手XmlHttpRequest
引言: 非TGB的.直接跳过吧-- 从开学结束JQuery之后,计算机的进度停了一段时间.某天无聊的时候,又又一次把BS的东西拿过来看了看. 发现里面有非常多既熟悉又陌生的东西. 在学习王兴魁老师的A ...
- opencv-图像金字塔
图像金字塔 目标 原理摘自:http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/imgproc/pyramids/pyramids. ...