首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

pt-table-checksum使用实践

另外很多时候需要把一个从库提升为主库,但对从库和主库的数据一致性不能保证一样,所以就利用 pt-table-checksum 工作来检查主从的一致性,以及通过 pt-table-sync 如何修复这些不一致的数据...####### [100%] 1:percona-toolkit ########################################### [100%] 使用方法: pt-table-checksum...[OPTIONS] [DSN] pt-table-checksum:在主(master)上通过执行校验的查询对复制的一致性进行检查,对比主从的校验值,从而产生结果。...sql | +----+----------+ 5 rows in set (0.00 sec) mysql> 很明显主从数据不一致,那么我们使用工具来检测: [root@MySQL-01 ~]# pt-table-checksum...从错误信息得出,要是不改binlog模式的话,则在执行上面的命令时候要指定: —no-check-binlog-format,即: [root@MySQL-01 ~]# pt-table-checksum

4.1K90
您找到你想要的搜索结果了吗?
是的
没有找到

pt-table-checksum命令检查数据一致性

// pt-table-checksum命令检查数据一致性 // 今天上班遇到了一个主从复制失败的问题,问题的表现是从库复制报错,最终通过修改参数slave_exec_mode的方法暂时解决了问题...这个可能还是个问题,于是我想到了pt-table-checksum这个工具,这个工具之前用的比较少,今天再来总结总结这个工具的用法。...pt-table-checksum主要是用来检测主从的数据一致性的,它一般在主库上执行,使用到的常见参数和输出分别如下: 01 常用参数 --replicate:将查到的数据不一致的结果保存在某个表中。...--------+ 2 rows in set (0.00 sec) [dba_mysql ~]$ /usr/local/mysql_tools/percona-toolkit-3.0.4/bin/pt-table-checksum...binlog格式都改为statement格式,然后测试该工具的执行结果: [dba_mysql ~]$ /usr/local/mysql_tools/percona-toolkit-3.0.4/bin/pt-table-checksum

2.2K20

pt-table-checksum 的使用(2个案列)

pt-table-checksum 的用法案例 原理&注意事项: 1 使用的时候应选择在业务低峰期运行,因为运行的时候会造成表的部分记录被锁定。...2 pt-table-checksum提供了多种手段以确保尽量不会对生产环境造成影响,你可以使用--max-load来指定最大负载,如果达到最大负载,就暂停运行。...5 pt-table-checksum 会忽略掉test库下的表     6 测试发现 pt-table-checksum 3.0.4 版本有bug, 不要用这个版本 参数说明: --host=主节点的...因为我们的日志用的MIXED格式,所有这里要加上不检查复制的binlog模式 --replicate-check-only          :只显示不同步的信息,有时加该参数导致修复后明明数据已经一致了,但是使用pt-table-checksum...:00:00 |     |  4 | dd   | 2017-02-12 11:00:00 |     +----+------+---------------------+ 在主库执行检查操作: pt-table-checksum

1K50

第13问:pt-table-checksum 到底会不会影响业务性能?

问题 用 pt-table-checksum 时,会不会影响业务性能? 实验 实验开始前,给大家分享一个小经验:任何性能评估,不要相信别人的评测结果,要在自己的环境上测试,并(大概)知晓原理。...我们先建一对主从: 然后用 mysqlslap 跑一个持续的压力: 开另外一个会话,将 master 上的 general log 打开: 然后通过 pt-table-checksum 进行一次比较:...查看 master 的 general log,由于 mysqlslap 的影响,general log 中有很多内容,我们找到与 pt-table-checksum 相关的线程: 将该线程的操作单独列出来...以上是 pt-table-checksum 的一些设计,可以看到这几处都是精心维护了业务流量不受影响。...总结 本期我们介绍了简单分析 pt-table-checksum 是否会影响业务流量,坊间会流传工具的各种参数建议或者不建议使用,算命的情况比较多,大家都可以用简单的实验来分析其中机制。

63310

pt-table-checksum工具主从一致性检查修复

这个时候我们就要借助percona公司的pt工具来进行处理,pt-table-checksum和pt-table-sync分别检验master-slave的数据不一致并修复,避免了人工分析并筛选binlog...pt-table-checksum针对的binlog_format=statement的格式,根据pt-table-checksum的原理,它在执行的时候,没有将会话级别的binlog_format=statement...pt-table-checksum 3.0.4在执行时缺少SET@@binlog_format='STATEMENT',建议不要使用。...--version pt-table-checksum 3.0.4 master1:172.16.3.190 basedir:/opt/app/mysql_3309/  datadir:/opt/app...根据pt的执行机制,那到底是那一步出现问题了呢,有一种很挫的方法,仅仅是为了看差异结果(生产环境勿用),执行pt-table-checksum前,在主上 set global binlog_format

67410

检测MySQL主从复制一致性并修复

percona-toolkit是一组高级命令行工具的集合,使用perl编写,用来执行各种通过手工执行非常复杂和麻烦的MySQL和系统任务,我们使用最多的三个组件有: pt-table-checksum...检测数据一致性 使用的是pt-table-checksum这个工具,原理是: 在主库执行基于statement的sql语句来生成主库数据块的checksum,把相同的sql语句传递到从库执行,并在从库上计算相同数据块的...pt-table-checksum 默认情况下可以应对绝大部分场景,官方说,即使上千个库、上万亿的行,它依然可以很好的工作,这源自于设计很简单,一次检查一个表,不需要太多的内存和多余的操作;必要时,pt-table-checksum...为了保证主数据库服务的安全,该工具实现了许多保护措施:1)自动设置 innodb_lock_wait_timeout 为1s,避免锁等待时间过长;2)默认当数据库有25个以上的并发查询时,pt-table-checksum.../bin/bash pt_table=$(which pt-table-checksum) pt_sync=$(which pt-table-sync) dbs="库名" master="master_ip

1.6K30

MySQL主从服务器数据一致性的核对与修复

Percona Toolkit里的pt-table-checksum和pt-table-sync可以搞定此类问题。...password= --error-numbers=1062 前戏进行到这里应该可以了,下面让我们直捣黄龙,看看如何解决问题: MySQL主从服务器数据一致性的核对 通过在主服务器上运行pt-table-checksum...这里面有两点需要说明: 计算表的散列值时,pt-table-checksum并不是直接计算整个表的散列值,而是分块计算,这样就避免了造成从服务器长时间的延迟。...实际操作时的命令大致如下: shell> pt-table-checksum \ --replicate=percona.checksums \ --host=...MySQL主从服务器数据一致性的修复 通过在主服务器上运行pt-table-sync,它会重建数据,数据通过复制从主服务器同步到从服务器,从而修复了一致性,在操作过程中,可以利用pt-table-checksum

87350
领券