pt-table-checksum和pt-table-sync
- 下载并安装percona-toolkit及所需要用到的依赖
wget http://www.percona.com/downloads/percona-toolkit/LATEST/RPM/percona-toolkit-2.2.14-1.noarch.rpm
yum install perl-IO-Socket-SSL perl-DBD-MySQL perl-Time-HiRes -y
rpm -ivh percona-toolkit-2.2.14-1.noarch.rpm
-
pt-table-checksum
用途: 可以用来检测主、 从数据库中数据的一致性。
原理: 在主库上运行, 对同步的表进行checksum, 记录下来。 然后对比主从中各个表的checksum是否一致, 从而判断数据是否一致。
-
pt-table-sync
用途:用来修复多个实例之间数据的不一致,它可以让主从的数据修复到最终一致,也可以使通过应用双写或多写的多个不相关的数据库实例修复到一致。同时它还内部集成了pt-table-checksum的校验功能,可以一边校验一边修复,也可以基于pt-table-checksum的计算结果来进行修复。
原理:
先检查表,然后获取每列的数据类型,然后把类型转化为字符串,利用concat_wa()函数进行连接,然后以crc32校验计算出checksum值