MySQL主从同步校验与重新同步
Posted sqlservertongbu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL主从同步校验与重新同步相关的知识,希望对你有一定的参考价值。
主从复制环境中,可能有种种原因导致主、从库数据不一致的情况,主从一致性也一直是DBA需要关注的问题,校验mysql的主从一致性一般有多种工具,诸如MySQL自带的checksum、mysqldiff、pt-table-checksum等,每种工具各有优缺,本文就pt-table-checksum工具进行介绍和记录实验环节。
?
下载二进制版本的percona-toolkit工具箱
https://www.percona.com/downloads/percona-toolkit
本文用的是2.2.18版本
~]# tar xvf percona-toolkit-2.2.18.tar.gz
~]# cd percona-toolkit-2.2.18
percona-toolkit-2.2.18]# perl Makefile.PL
[[email protected] percona-toolkit-2.2.18]# make && make install
?
?
主库创建checksums用户用于校验主从是否一致
开始执行校验,在校验结束后,会在test库下创建表名为checksums的表用于存储主从一致性信息
?
从库可以执行本条SQL来查看哪些表有主从不一致的情况,此时主从是一致的所以没有结果
?
我们先删除www库下的某张表的某一行
?
?
再次运行同步校验
?
可以发现在从库上执行本条SQL可以看到主从不一致的表名
?
?
同理我们删掉erp库下的某张表的某一行
?
?
再次运行同步校验
?
?
可以发现刚刚删除的erp_mard表已经进入到了我们的主从不一致记录表里
?
?
我们在主库执行pt-table-sync命令来进行重新同步(请做好备份,重要的话说三遍,备份备份备份)
同步完后重新验证
?
可以发现checksums表已经没有不同步的表了
?
?
至此主从校验、同步完成
?
pt-table-checksum,pt-table-sync这两个工具还有很多重要的特性和参数,这里仅做实验用,具体的生产还需要哪些参数,比如只同步某张表等以后会继续深入研究
?
?
以上是关于MySQL主从同步校验与重新同步的主要内容,如果未能解决你的问题,请参考以下文章
MySQL主从同步校验工具_pt-table-checksum
MySQL主从同步校验工具_pt-table-checksum