博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL主从库数据的一致性——percona-toolkit工具集
阅读量:5845 次
发布时间:2019-06-18

本文共 1861 字,大约阅读时间需要 6 分钟。

hot3.png

如需转载请注明出处

 

我丑 话说在前头:

192.168.1.116 主masterA Windows MySQL8.0

192.168.1.200 备库B,VMUbuntu18 MySQL8.0

shell代表Ubuntu终端

cmd代表Windows终端

----------------------------------------------------------------------------------------------------------------

1

使用percona-toolkit工具集中的pt-table-chechsum

下载percona-toolkit地址(有点慢,到外面去会快点):

----------------------------------------------------------------------------------------------------------------

 

2

shell>

pt-table-checksum --no-check-binlog-format --replicate=autoclub_db.checksums --databases=autoclub_db -ulgl -p123456 -h 192.168.1.116

--no-check-binlog-format:默认yes,建议启用不检查模式

--replicate:把信息写入到指定表中,会在autoclub_db中创建checksums表
--databases:指定库,用逗号隔开
--tables:指定表,用逗号隔开
-ulgl -p123456 -h 192.168.1.116:格式固定,-u -p后不能用空格隔开

得到如下表:

            TS ERRORS  DIFFS     ROWS  DIFF_ROWS  CHUNKS SKIPPED    TIME TABLE
01-02T15:29:35      0      0      210          0       1       0   0.122 autoclub_db.article_infos

DIFFS:0无差异,1存在不同

ROWS:所检测的表的行数

原理:针对两库中的某张表的所有字段进行hash运算,得到主库为master_crc、master_cnt,从库为this_crc、this_cnt,然后分别对比,判断一致性。

----------------------------------------------------------------------------------------------------------------

3

对于从库宕机,恢复后,会自动与主库进行同步。

对于主库来说需要使用pt-table-sync进行数据修复,如果两库均在Linux系统下的转到4,数据修复。

其中对于windows来说官方没有给出percona的windows版本,我这里无法与从库同步,所以目前我还没有对4进行真正的实验,以下内容均为胡编乱造。

----------------------------------------------------------------------------------------------------------------

4

估且认为我的A mysql是在Linux Unbuntu环境下搭建的

A shell>

pt-table-sync --replicate=autoclub_db.checksums h=192.168.1.200,u=lgl,p=123456 -print
--replicate:表示使用part2生成的表
-print:打印但不执行

A shell>

pt-table-sync --replicate=autoclub_db.checksums h=192.168.1.200,u=lgl,p=123456 -execute
-execute:执行命令

在使用part2效验数据是否一致。

----------------------------------------------------------------------------------------------------------------

至此,共勉,如需转载请注明出处

 

转载于:https://my.oschina.net/feistel/blog/2996118

你可能感兴趣的文章
Linux内核系列—C语言中内嵌汇编 asm __volatile__,asm__volatile_【转】
查看>>
git/ssh捋不清的几个问题
查看>>
UART硬件流控制信号的使用(图)DTR 【转】
查看>>
Elasticsearch或查询
查看>>
分布式监控系统Zabbix3.2添加自动发现磁盘IO并注册监控
查看>>
HBase编程 API入门系列之工具Bytes类(7)
查看>>
WP7开发第一课:WP7项目组织结构&简单登陆例子(其二)
查看>>
Maven 简单配置gpg
查看>>
波特率原理【转】
查看>>
Virtual Machine虚拟机原理
查看>>
20篇教你得到酷炫效果的JQuery教程
查看>>
DotNET企业架构应用实践-架构师成长之路-如何成为优秀架构师
查看>>
【日常小记】linux中强大且常用命令:find、grep【转】
查看>>
再看知名应用背后的第三方开源项目【转】
查看>>
C#实现php的hash_hmac函数
查看>>
Beam编程系列之Python SDK Quickstart(官网的推荐步骤)
查看>>
使用最大似然法来求解线性模型(3)-求解似然函数
查看>>
git学习——Git 基础要点【转】
查看>>
理解 JavaScript 闭包
查看>>
Oracle之:Function :dateToNumber()
查看>>