percona-toolkit之pt-table-sync
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,通过上面pt-table-checksums找到了这些不一致的数据表(https://blog.51cto.com/li02yu/2340403),如何同步数据呢?即如何修复MySQL主从不一致的数据
千家信息网最后更新 2025年02月03日percona-toolkit之pt-table-sync
通过上面pt-table-checksums找到了这些不一致的数据表
(https://blog.51cto.com/li02yu/2340403)
,如何同步数据呢?即如何修复MySQL主从不一致的数据,让他们保持一致性呢?利用另外一个工具 pt-table-sync。
使用方法:
pt-table-sync [OPTIONS] DSN [DSN]
pt-table-sync: 高效的同步MySQL表之间的数据,他可以做单向和双向同步的表数据。他可以同步单个表,也可以同步整个库。它不同步表结构、索引、或任何其他模式对象。所以在修复一致性之前需要保证他们表存在。
通过(--print)打印出来修复一个表数据的sql语句
[lxh@MySQL-01 ~]# pt-table-sync --print --databases=test --table=test1 --sync-to-master h='172.31.153.164',u='lxh',p='Mysql.163',P=3306
通过(--print)打印出来修复一个库数据的sql语句
[lxh@MySQL-01 ~]# pt-table-sync --print --databases=test --sync-to-master h='172.31.153.164',u='lxh',p='Mysql.163',P=3306
通过(--print)打印出来修复所有数据库的sql语句(不建议这样使用)
[lxh@MySQL-01 ~]# pt-table-sync --print --sync-to-master h='172.31.153.164',u='lxh',p='Mysql.163',P=3306
参数的意义:复制代码--replicate= :指定通过pt-table-checksum得到的表,这2个工具差不多都会一直用。不指定,则使用默认的--databases= : 指定执行同步的数据库,多个用逗号隔开。--tables= :指定执行同步的表,多个用逗号隔开。--sync-to-master :指定一个DSN,即从的IP,他会通过show processlist或show slave status 去自动的找主。h=172.31.153.164 :服务器地址,Slave的地址。u=lxh :帐号。p=Mysql.163 :密码。--print :打印,但不执行命令。--execute :执行命令。
一起解释下执行的效果:通过(--print)打印出来了修复数据的sql语句,可以手动的去从行执行,让他们数据保持一致性。那能否直接执行?当然可以,通过(--execute)
[lxh@MySQL-01 ~]# pt-table-sync h=172.31.153.164,u=lxh,p=Mysql.163 --execute
没发现任何异常,然后检查主从数据的一致性:
[lxh@MySQL-01 ~]# pt-table-checksum -u'lxh' -p'Mysql.163' -h272.31.153.163 --databases=test --nocheck-binlog-format --nocheck-plan --nocheck-replication-filters --recursion-method=processlist TS ERRORS DIFFS ROWS CHUNKS SKIPPED TIME TABLE04-13T16:27:28 0 0 3 1 0 0.097 test.test1
OK,数据已经保持一致了。不过建议还是用--print 打印出来的好,这样就可以知道那些数据有问题,可以人为的干预下。不然直接执行了,出现问题之后更不好处理。总之还是在处理之前做好数据的备份工作。
注意:要是表中没有唯一索引或则主键则会报错:
Can't make changes on the master because no unique index exists at /usr/local/bin/pt-table-sync line 10591.需要给表添加主键或唯一索引即可
数据
同步
一致
一致性
语句
索引
命令
地址
多个
工具
建议
数据库
还是
逗号
问题
处理
差不多
不好
主从
之间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国自己的数学软件开发
高中信息技术关系数据库教案
服务器显示f闪烁的绿灯
学习it数据库
广东办公系统软件开发正规平台
益阳优质的数据库
北京瑞鸽互联网科技有限公司
永德鼎鼎互联网科技有限公司
服务器停机
国家部门负责协调网络安全工作
软件开发需要做调查问卷吗
sql服务器管理器在哪里
软件开发负责人怎么拿工资
厦门收银软件开发
hp 518 网络安全密匙
互联网科技头闻
数据库怎么计算金额
tcga数据库中的癌症名称缩写
怎么打开不安全连接到服务器
软件开发工作辛苦吗
服务器怎么看报错信息
张焕然 注意网络安全
著名网络安全公司
郑州的网络安全公司
服务器上运行易语言停止工作
软件开发版本计划
数据库中的表可以永久删除吗
广电网络技术支撑人
软件开发工作辛苦吗
软件开发税收优惠政策改革