percona-toolkit之pt-table-sync
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,通过上面pt-table-checksums找到了这些不一致的数据表(https://blog.51cto.com/li02yu/2340403),如何同步数据呢?即如何修复MySQL主从不一致的数据
千家信息网最后更新 2025年11月16日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.test1OK,数据已经保持一致了。不过建议还是用--print 打印出来的好,这样就可以知道那些数据有问题,可以人为的干预下。不然直接执行了,出现问题之后更不好处理。总之还是在处理之前做好数据的备份工作。
注意:要是表中没有唯一索引或则主键则会报错:
Can't make changes on the master because no unique index exists at /usr/local/bin/pt-table-sync line 10591.需要给表添加主键或唯一索引即可
数据
同步
一致
一致性
语句
索引
命令
地址
多个
工具
建议
数据库
还是
逗号
问题
处理
差不多
不好
主从
之间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
青山好的软件开发公司
java数据库连接sql
天津学校卫星授时服务器云空间
大兴区网络技术质量推荐
通信盒子软件开发
软件开发费用核算方法
跨区网络安全应急演练
关于深度神经网络技术在语音
开化民宿软件开发
本科网络安全研究生
怎么组企业服务器
网络安全哈管理制度制度
北京市分布式服务器云空间
南昌软件开发培训
沧州软件开发招聘信息
物流节点网络数据库需要哪些表格
马鞍山保险软件开发定制
电脑如何反向代理服务器ip
网络安全配置失败
湛江市 软件开发
服务器射频
河北通讯软件开发价钱
硬件服务器型号参数
数据库应用系统实例应用举例
手操报网络安全
彭博数据库官网
数据库技术的术语与关系模型
软件开发岗位职责介绍
开发好还是网络安全
餐饮软件开发电话