首页 > 数据库 >mysql 主从一致性检测与修复

mysql 主从一致性检测与修复

时间:2024-07-01 10:30:38浏览次数:3  
标签:pt -- checksums 主从 replicate mysql 一致性 table check

percona-toolkit下载

需要安装的依赖包[centos7]
yum -y install perl-Digest-MD5 perl-DBI perl-DBD-MySQL --nogpgcheck --disablerepo mysql80-community --enablerepo mysql57-community

原理

将一张大表分成多个chunk,每次针对一个chunk进行校验,同时将校验的结果通过REPLACE INTO语句写入到percona.checksums表中,然后该语句通过主从复制,在SLAVE中同样执行一次,校验的结果同样是写入到percona.checksums表中,最后,通过查询percona.checksums来获取主从不一致的信息。

指令介绍

pt-table-checksum
pt-table-checksum  --set-vars innodb_lock_wait_timeout=120 u=remote,p=QianFeng@123,h=192.168.96.157,P=3306 --no-check-binlog-format --quiet
 
--set-vars innodb_lock_wait_timeout=120 设置变量,innodb锁等待两分钟
-h remote 主库ip
-p 主库密码
-u 主库用户
-P 主库端口
--no-check-binlog-format pt-table-checksum默认是运行在statement下,如果是其它日志格式,需加--no-check-binlog-format参数
--quiet 输出静默
 
pt-table-checksum  --set-vars innodb_lock_wait_timeout=120 u=remote,p=QianFeng@123,h=192.168.96.157,P=3306 --no-check-binlog-format --replicate-check-only
 
--replicate-check-only 如果指定了--replicate-check-only参数,则意味着不会校验任何表,直接获取上次校验的结果。
pt-table-sync
pt-table-sync --execute --print  --charset=utf8 --replicate=percona.checksums  h=192.168.96.157,u=remote,p=QianFeng@123
 
--execute 恢复数据到从库
--print 打印sql
--charset 指定字符集
--replicate 指定记录差异的库表,会自动创建,mariadb为test.checksums

标签:pt,--,checksums,主从,replicate,mysql,一致性,table,check
From: https://blog.csdn.net/weixin_60250117/article/details/140094015

相关文章

  • (免费领源码)java#Springboot#mysql物品代拿系统32500-计算机毕业设计项目选题推荐
    摘 要科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用Java技术开发,Sp......
  • 乌班图Ubuntu 24.04初始化MySQL报错error while loading shared libraries: libaio.so
    由于乌班图24.04LTS已经发布了,因此准备新业务逐步往这上面迁移,毕竟支持有效期比22.04更长准备在24.04上进行MySQL的初始化,因为习惯自定义安装存储目录,所以使用mysql-8.0.37-linux-glibc2.28-x86_64.tar.xz这个最新的二进制版本。按照22.04版本整理的安装笔记进行操作,第一步安装......
  • Mysql表的增删改查详解
    3.表的增删改查创建一个学生表DROPTABLEIFEXISTSstudent;CREATETABLEstudent(idINT,snINTcomment'学号',nameVARCHAR(20)comment'姓名',qq_mailVARCHAR(20)comment'QQ邮箱');单行数据+全列插入插入两条记录,value_list数量必须......
  • 类JPA定制mysql中日志打印
    在类JPA自定义框架中,使用mysql数据库,开发环境可以考虑调整driver:jdbc.driver=net.sf.log4jjdbc.DriverSpy配置:spring.datasource.driver-class-name=net.sf.log4jdbc.DriverSpyspring.datasource.url=jdbc:log4jdbc:mysql://localhost:3306/springboot?useUnicode=true&......
  • MySQL 索引之外的相关查询优化总结
    在这之前先说明几个概念:1、驱动表和被驱动表:驱动表是主表,被驱动表是从表、非驱动表。驱动表和被驱动表并非根据from后面表名的先后顺序而确定,而是根据explain语句查询得到的顺序确定;展示在前面的是驱动表,后面的是非驱动表。2、关联查询的类型非为:内连接(innerjoin)、......
  • 【Redis —— 06 主从复制配置】
    Redis主从复制(replication)允许一个Redis服务器(称为主服务器)将数据复制到一个或多个Redis服务器(称为从服务器)。这种机制可以用于提高数据的可用性和分布式读取能力。以下是配置Redis主从复制的步骤:主服务器配置在主服务器上,通常不需要进行特殊配置,只需确保Redis服......
  • “了解MySQL中的enum枚举数据类型“
    目录#开篇1.创建包含枚举类型的表2.插入枚举类型的数据3.查询包含枚举类型的表4.更新枚举类型的数据5.使用枚举类型的好处注意事项示例总结附加#开篇        在数据库中,枚举(ENUM)是一种数据类型,用于存储一组预定义的值。这在某些情况下非常有用,例如......
  • MySQL面试重点-2
    16.MySQL数据引擎:引擎分类:showengines命令查看数据库支持的存储引擎。描述一下InnoDB和MyISAM的区别?**InnoDB存储限制64TB,而MyISAM存储限制256TB;InnoDB支持事物,而MyISAM不支持;InnoDB支持外键,而MyISAM不支持;InnoDB支持行级锁(默认)+表级锁,而MyISAM支持表级锁;InnoDB支持MVCC......
  • mysql主从同步
    mysql主从同步1.1介绍#什么是mysql主从同步MySQL主从复制(Master-SlaveReplication)是一种数据复制技术,用于在多个数据库服务器之间的数据同步。在主从复制架构中,一个服务器被设置为主服务器(Master),充当数据源,其他服务器被设置为从服务器(Slave),用来复制主服务器的数据。#......
  • mysql默认存储引擎--innodb存储引擎(详解)
    官方解释:    InnoDB,是MySQL的数据库引擎之一,现为MySQL的默认存储引擎,为MySQLAB发布binary的标准之一。InnoDB由InnobaseOy公司所开发,2006年五月时由甲骨文公司并购。与传统的ISAM与MyISAM相比,InnoDB的最大特色就是支持了ACID兼容的事务(Transaction)功能,类似于Postgre......