pt-table-checksum主从一致性校验工具
程序员文章站
2022-10-30 21:16:37
pt-table-checksum主从一致性校验工具
1. 功能介绍
检查mysql复制一致性.
2. 用法介绍
pt-table-checksum [OPTION&hel...
pt-table-checksum主从一致性校验工具
1. 功能介绍
检查mysql复制一致性.
2. 用法介绍
pt-table-checksum [OPTION…] [DSN]
工作原理: pt-table-checksum在主上执行检查语句在线检查mysql复制的一致性,生成replace语句,然后通过复制传递到从,再通过update更新master_src的值。通过检测从上this_src和master_src的值从而判断复制是否一致。
[DSN] 指向的是主的地址。
注意事项:
测试需要一个既能登录主库、也能登录从库,而且能同步数据库的账号。 只能指定一个host,必须为主库的ip. 在检查时会向表加S锁. 运行之前需要从库的同步IO和SQL进程是YES状态 如果在配置主从时, 忽略复制mysql库时, 需要在主上和从上都执行下面的授权语句。 mysql> grant select, process, super, replication slave on *.* to 'checksums'@'x.x.x.x' identified by '123456';备注: 使用的时候选择业务地峰的时候运行,因为运行的时候会造成表的部分记录锁定。 使用--max-load来指定最大的负载情况,如果达到那个负载这个暂停运行。如果发现有不一致的数据,可以使用pt-table-sync工具来修复。 (和1.0版本不同,新版本的pt-table-checksum只需要在master上执行即可)
3. [OPTION..]–选择参数
--nocheck-replication-filters :不检查复制过滤器,建议启用。后面可以用 --databases:来指定需要检查的数据库。 --no-check-binlog-format : 不检查复制的binlog模式,要是binlog模式是ROW,则会报错。 --replicate-check-only :只显示不同步的信息。 --replicate= :把checksum的信息写入到指定表中,建议直接写到被检查的数据库当中。 --databases= :指定需要被检查的数据库,多个则用逗号隔开。 --tables= :指定需要被检查的表,多个用逗号隔开 --create-replicate-table: 创建表(给用户创建表的权限) --recursion-method: 主机信息 h=127.0.0.1 :Master的地址 u=root :用户名 p=123456 :密码 P=3306 :端口
4. 实例:
实例1:
>>> pt-table-checksum --nocheck-replication-filters --databases=activity --replicate=radius.checksums --create-replicate-table --no-check-binlog-format --host=192.168.7.131 --port=3306 -uroot -p123456
TS ERRORS DIFFS ROWS CHUNKS SKIPPED TIME TABLE 07-31T14:17:44 0 1 4 1 0 1.131 activity.t
TS :完成检查的时间。 ERRORS :检查时候发生错误和警告的数量。 DIFFS :0表示一致,1表示不一致。当指定--no-replicate-check时,会一直为0,当指定--replicate-check-only会显示不同的信息。 ROWS :表的行数。 CHUNKS :被划分到表中的块的数目。 SKIPPED :由于错误或警告或过大,则跳过块的数目。 TIME :执行的时间。 TABLE :被检查的表名。
mysql > select * from radius.checksums; db: activity tbl: t chunk:1 chunk_time:0.001246 chunk_index:NULL lower_boundary:NULL upper_boundary:NULL this_crc: 706af48f #slave this_cnt:4 #slave master_crc: e963a535 #master master_cnt:4 #master 可以发现表t1中从库比主库多0条记录 ts:2014-04-13 16:05:16
推荐阅读
-
如何利用percona-toolkit工具检查MySQL数据库主从一致性以及修复
-
如何利用percona-toolkit工具检查MySQL数据库主从一致性以及修复
-
MySQL5.7使用pt-table-checksum检查主从数据一致性的测试讲解
-
MySQL5.7使用pt-table-checksum检查主从数据一致性的测试讲解
-
pt-table-checksum主从一致性校验工具
-
pt工具主从一致性检查并修复以及版本3.0.4的版本缺点
-
mysql主从数据一致性校验及纠错工具
-
pt-table-checksum主从一致性校验工具
-
MySQL非主从环境下数据一致性校验及修复程序
-
MySQL主从的一致性校验及修复