Percona Toolkit 常用工具使用介绍

Percona Toolkit 是一组高级的命令行工具,用来管理 MySQL 和系统任务,主要包括:

1、验证主节点和复制数据的一致性

2、有效的对记录行进行归档

3、找出重复的索引

4、总结 MySQL 服务器

5、从日志和 tcpdump 中分析查询

6、问题发生时收集重要的系统信息

一、安装步骤忽略

http://www.percona.com/downloads/percona-toolkit

二、常用工具集:

1、服务器摘要

    pt-summary  

2、服务器磁盘监测

    pt-diskstats  

3、mysql服务状态摘要

    pt-mysql-summary -- --user=root --password=root  

4、慢查询日志分析统计

分析一段时间的slow日志:

    pt-query-digest slow.log --since '2014-04-17 09:30:00' --until '2014-04-17 10:00:00'> slow1.log

通过tcpdump抓取分析日志:

    tcpdump -s 65535 -x -nn -q -tttt -i any -c 1000 port 3306 > mysql.tcp.txt
    pt-query-digest --type tcpdump mysql.tcp.txt> slow_report9.log

分析binlog日志:

    mysqlbinlog mysql-bin.000093 > mysql-bin000093.sql
    pt-query-digest  --type=binlog  mysql-bin000093.sql > slow_report10.log

分析全日制:

    pt-query-digest  --type=genlog  localhost.log > slow_report11.log

5、表同步工具,和mk-tables-sync功能一样, 用法上稍有不一样,--print的结果更详细

    pt-table-sync --execute --print --no-check-slave --database=world  h='127.0.0.1' --user=root --password=123456 h='192.168.0.212' --user=root --password=123456  

6、主从状态监测,提供给它一台mysql服务器的IP用户名密码,就可以分析出整个主从架构中每台服务器的信息,包括但不限于mysql版本,IP地址,server ID,mysql服务的启动时间,角色(主/从),Slave Status(落后于主服务器多少秒,有没有错误,slave有没有在运行)。

    pt-slave-find --host=localhost --user=rhce6 --password=rhce6    
 localhost   
    Version          5.5.23-log   
    Server ID       1   
    Uptime            05:16:10 (started 2012-08-08T09:32:03)   
    Replication     Is not a slave, has 1 slaves connected, is not read_only   
    Filters            
    Binary logging  STATEMENT   
    Slave status       
    Slave mode      STRICT   
    Auto-increment  increment 1, offset 1   
    InnoDB version  1.1.8   
    +- 192.168.0.168   
    Version           5.5.23-log  
    Server ID        10   
    Uptime            38:19 (started 2012-08-08T14:09:54)   
    Replication      Is a slave, has 0 slaves connected, is not read_only   
    Filters            
    Binary logging  STATEMENT   
    Slave status     0 seconds behind, running, no errors   
    Slave mode      STRICT   
    Auto-increment  increment 1, offset 1   
    InnoDB version  1.1.8

7、mysql死锁监测

pt-deadlock-logger --create-dest-table --dest D=test,t=deadlocks -S /home/data/mysql/tmp/mysql.sock u=root,p="123456"
pt-deadlock-logger --daemonize --run-time=300 --dest D=test,t=deadlocks  -S /home/data/mysql/tmp/mysql.sock u=root,p="123456" &

8、主键冲突检查

pt-duplicate-key-checker --database=world h='127.0.0.1' --user=root --password=123456  

9、监测从库的复制延迟 ###经过测试 运行这个命令会使从库上的sql线程异常挂掉

pt-slave-delay --host 192.168.0.206 --user=root --password=123456  

10、杀掉全部的读 每一秒杀一次查询时间超过10秒的查询 记录日志

pt-kill --user=xxxxx --password=xxxxxx --busy-time 10 --victim all --interval 1 --kill --daemonize --print --log=/export/data/mysql/log/pt-kill.log

--daemonize这个参数是使用守护进程的方式运行

原文发布于微信公众号 - MYSQL轻松学(learnmysql)

原文发表时间:2016-08-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏pangguoming

CentOS 6 使用 yum 安装MongoDB及服务器端配置

安装MongoDB的方法有很多种,可以源代码安装,在Centos也可以用yum源安装的方法。由于MongoDB更新得比较快,我比较喜欢用yum源安装的方法。64...

4287
来自专栏容器云生态

Docker1.12尝试

前言:在docker1.12中默认增加了swarm mode 编排功能,并且官方支持更多的插件来进行docker的网路和外接存储插件,不过目前测试swarm m...

42810
来自专栏程序员同行者

14-使用glusterfs做持久化存储

1462
来自专栏FreeBuf

一款轻量级Web漏洞教学演示系统(DSVW)

Damn Small Vulnerable Web (DSVW) 是使用 Python 语言开发的 Web应用漏洞 的演练系统。其系统只有一个 python 的...

26310
来自专栏hotqin888的专栏

beego利用casbin进行权限管理——第三节 策略查询

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hotqin888/article/det...

2182
来自专栏Felix的技术分享

Stetho的通信原理

2863
来自专栏何俊林

手把手图文并茂教你用Android Studio编译FFmpeg库并移植

之前曾写过一篇《FFmpeg在Linux下安装编译过程》,今天有空就用Android Studio编译FFmpeg库并移植,并附上调用ffmpeg简单示例,看下...

3656
来自专栏乐沙弥的世界

RMAN 备份详解

RMAN使用服务器会话来完成备份操作,从RMAN客户端连接到服务器将产生一个服务器会话

1262
来自专栏武军超python专栏

2018年8月30日winPE系统和启动盘格式的区别和win安装系统启动方式的区别

*********************************** winPE系统: Windows Preinstallation Environ...

1904
来自专栏锦小年的博客

Linux使用笔记2-screen的妙用(保留端口会话)

现在一般都是用Windows通过ssh连接到linux,有时候工作到兴起,断网了、或者重启了,这时候一切都完了,重新连接也不能回到以前的会话。那么有没有一种可能...

1828

扫码关注云+社区