percona-toolkit之工具pt-table-checksum使用介绍

pt-table-checksum:主要用来检查主从数据是否一致,原理即在主库执行把表每行的列通过concat函数进行拼接,然后对拼接的值进行hash,并把该动作通过binlog传递到从库,从而在从库上也执行相关操作,主库上表完成checksum操作后,会等待所有从库对该表完成checksum,然后比对主从库上该表checksum值是否一致来判断数据是否一致。 pt-table-checksum主库要检查的表在从库都存在,并且同主库表有相同的表结构。如果要检查的表在从库不存在,或者表结构同主库不一致,那么对该表的checksum会破坏从库复制线程(3.4版本需要手动设置binlog_format=statement,工具才会检查到数据不一致)。

主库及从库创建检查用户

./pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --replicate=bhs.checksum --create-replicate-table --databases bhs -h 192.168.56.108 -u checkq -p 123456 -P 3306 --recursion-method=processlist --empty-replicate-table
TS ERRORS DIFFS ROWS CHUNKS SKIPPED TIME TABLE
11-20T23:39:14 0 1 0 1 0 0.487 bhs.pp
11-20T23:39:14 0 1 2 1 0 0.288 bhs.test
11-20T23:39:14 0 0 0 1 0 0.296 bhs.tt

--replicate-check-only 找到与主库数据不一致的从库
./pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --replicate=bhs.checksum --create-replicate-table --databases bhs -h 192.168.56.108 -u checkq -p 123456 -P 3306 --replicate-check-only
Differences on slv2
TABLE CHUNK CNT_DIFF CRC_DIFF CHUNK_INDEX LOWER_BOUNDARY UPPER_BOUNDARY
bhs.pp 1 -1 1
bhs.test 1 -1 1

--ignore-databases 忽略检查指定数据库
--ignore-tables 忽略检查指定表
只检查指定表

./pt-table-checksum --nocheck-replication-filters --no-check-binlog-format --replicate=bhs.checksum --create-replicate-table --databases=bhs --tables=pp -h 192.168.56.108 -u checkq -p 123456 -P 3306 --recursion-method=processlist --empty-replicate-table
TS ERRORS DIFFS ROWS CHUNKS SKIPPED TIME TABLE
11-21T10:13:55 0 1 2 1 0 0.293 bhs.pp

时间: 2024-10-03 19:10:11

percona-toolkit之工具pt-table-checksum使用介绍的相关文章

MySQL数据库一致性验证工具pt-table-checksum(Percona Toolkit )

https://www.percona.com/doc/percona-toolkit/2.2/pt-table-checksum.html Percona Toolkit 时 Percona公司提供的一个数据库管理工具包,包括常用的数据一致性验证.差异补齐.查找重复索引.分析二进制日志信息等,大大方便DBA查找和解决问题.优化数据库性能.但是作为一款工具,其使用仍然可能会对数据库产生影响,所以在使用该工具包执行任何操作执行,都需要完整的数据库备份. 以下内容主要从官档摘录. Percona T

Centos使用MySQL工具Percona Toolkit

安装Percona Toolkit 的Repo 得以支持直接用yum 安装二进制包 yum install -y https://www.percona.com/redir/downloads/percona-release/redhat/latest/percona-release-0.1-3.noarch.rpm yum install -y percona-toolkit 改MySQL表结构DDL pt-online-schema-change pt-online-schema-chang

RDS for MySQL 如何使用 Percona Toolkit

本期分享专家:田杰,专注在关系型数据库和NoSQL数据库技术领域,曾先后就职于路透社和渣打银行,目前在阿里云从事数据库技术支持工作,号称"数据库问题的终结者". Percona Toolkit 包含多种用于 MySQL 数据库管理的工具. 下面介绍常用的 pt-online-schema-change  和  pt-archiver 搭配 RDS MySQL 的使用方法. 注: pt-online-schema-change 和 pt-archiver 工具均须指定 --no-vers

office2013 toolkit激活工具使用方法

1.下载office2013和Office2013 toolkit激活工具.将下载好的office2013安装并解压office2013 toolkit激活工具.   2.双击运行office 2013 toolkit激活工具,安装过程需要大致1分钟的时间,请耐心等待.   温馨提示:使用office 2013 toolkit激活工具前请关闭杀毒软件,避免杀软误杀.安装完毕弹出office 2013 toolkit激活工具界面,我们鼠标点击Office Button(图中方框所示的位置),如图一

使用Percona Toolkit解决Mysql主从不同步问题【备忘】

由于各种原因,mysql主从架构经常会出现数据不一致的情况出现,大致归结为如下几类 1:备库写数据 2:执行non-deterministic query 3:回滚掺杂事务表和非事务表的事务 4:binlog或者relay log数据损坏 数据不同步给应用带来的危害是致命的,当出现主从数据不一致的情况,常见的应对方法是先把从库下线,然后找个半夜三更的时间把应用停掉,重新执行同步,如果数据库的体积十分庞大,那工作量可想而知,会让人崩溃.本文介绍使用percona-toolkit工具对mysql主从

css的em/ex/px/pt(css长度单位)使用介绍

  em:1em为当前字体font-size,一般浏览器默认为(16px); ex:以给定字体的小写字母x的高度为基准 px:像素,屏幕上的一个小方格 pt单位名称为点(Point),绝对长度单位一般老版本的table使用长度大小单位但是现在基本上没有使用

Linux下多线程下载工具MWget和Axel使用介绍

  linux运维在操作linux过程中,用得最多的linux下载工具想必一定是wget,没有看到哪一台服务器没装过wget的,或许有人使用ftp下载,也有人使用多线程的axel以及ProZilla,毫无疑问这两个工具都非常的出色,但是对于习惯使用wget的人来说显得不适应,于是老外便开发了多线程版本的wget工具mwget,m表示multi多线程的意思. mwget 官方地址:http://sourceforge.net/projects/kmphpfm/?source=dlp 代码如下: #

当前比较流行的两款PHP加密、解密工具Zend Guard和iconCube介绍_php技巧

当前市场上较流行的对PHP进行上述加密授权的软件主要有二种: (1)Zend公司的ZendGuard. (2)ionCube公司的ionCube PHP Encode. ZendGuard只能对带有PHP标记或源码的文件进行加密(如:.php,inc等),对于其他不带有PHP标记的文本方式保存的文件不能进行加密操作,支持期限,注册码. ionCube PHP Encode,由ionCube开发,用于对PHP或非PHP文件进行加密工作.ionCube在功能方面经过测试可以优胜于Zend公司的Zen

2007年首届全国工具条设计大赛活动介绍

中介交易 SEO诊断淘宝客 站长团购 云主机 技术大厅 一.大赛简介 随着Internet应用的日益普及,互联网已经成为我们日常工作.学习.生活中不可缺少的重要组成部分.浏览器工具条软件作为网民的上网辅助工具软件,由于具备运行简单.轻便小巧.方便快捷.简单易用.功能强大等独特优势,逐渐成为网民访问网络资源的主要途径之一.    为了普及浏览器工具条在国内的应用,共同抵制恶意软件,同时激励全国网络爱好者的创作热情,由IE秀携手众多网络IT企业举办首届全国工具条设计大赛暨网上展览会.大赛为国内网络爱

Lua中table库函数方法介绍_Lua

一部分的table函数只对其数组部分产生影响, 而另一部分则对整个table均产生影响. 下面会分开说明. table.concat(table, sep,  start, end) concat是concatenate(连锁, 连接)的缩写. table.concat()函数列出参数中指定table的数组部分从start位置到end位置的所有元素, 元素间以指定的分隔符(sep)隔开.除了table外, 其他的参数都不是必须的, 分隔符的默认值是空字符, start的默认值是1, end的默认