首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Percona Toolkit解决MySQL主从不同步问题

一、简单介绍 percona-toolkit工具中最主要的三个组件分别是: 1)pt-table-checksum 负责监测mysql主从数据一致性 2)pt-table-sync 负责当主从数据不一致时修复数据...,让它们保存数据的一致性 3)pt-heartbeat 负责监控mysql主从同步延迟 二、主机关系 主库:192.168.1.158:3306 从库:192.168.1.159:3306 主从关系 root...Master_Log_File: binlog.000219 Read_Master_Log_Pos: 137487355 Relay_Log_File: mysql-relay-bin...downloads/percona-toolkit/3.2.1/binary/redhat/7/x86_64/percona-toolkit-3.2.1-1.el7.x86_64.rpm 三、授权(最好主从全部授权...--replicate-check-only :只显示不同步的信息。 --replicate= :把checksum的信息写入到指定表中,建议直接写到被检查的数据库当中。

87830
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL生产环境主从关系数据不同步

    故障现象:两个数据库数据大小不一致,主从有问题,我重新建立主从关系后从的IO和SQL线程状态都是yes但是不同步数据。...,从状态上可以看出没有什么问题,并且我在从上重新导入了一份主库的数据库包括数据表,使主从数据差异缩小,我尝试在主上指定的ceair库中新建立一个表但是不同步主从复制数据还是有问题,上图中可以看出只复制...里面创建新的也没用,也是比较困扰我的,毕竟都是yes状态还不复制确实蒙蔽,相信遇见问题的你也是一样的现在开始慢慢排查 1.都是yes首先连接性可以保证了没有问题都是通的,防火墙也没问题 2.现状就是在状态ok下~主从不同步数据...docker pull mysql:5.6 环境比较干净,没有正式环境配置的那么多参数,也没有写限制的数据库语句,按照自己搭建主从的方式做了一遍没问题主从能复制 不能直接断定是镜像的问题 毕竟生产环境换镜像换数据库不可能的...复制多个参数,绝对不能像线上环境中binlog-do-db=1,2,3,4 逗号隔开虽说重启容器不会报错但是真的会影响主从数据复制 并不识别这样的语法 查看主的状态可以看出虽然状态一致但是错误的语句就是不同步数据

    1K10

    MySQL生产环境主从关系数据不同步

    故障现象:两个数据库数据大小不一致,主从有问题,我重新建立主从关系后从的IO和SQL线程状态都是yes但是不同步数据。...,从状态上可以看出没有什么问题,并且我在从上重新导入了一份主库的数据库包括数据表,使主从数据差异缩小,我尝试在主上指定的ceair库中新建立一个表但是不同步主从复制数据还是有问题,上图中可以看出只复制...里面创建新的也没用,也是比较困扰我的,毕竟都是yes状态还不复制确实蒙蔽,相信遇见问题的你也是一样的现在开始慢慢排查 1.都是yes首先连接性可以保证了没有问题都是通的,防火墙也没问题 2.现状就是在状态ok下~主从不同步数据...docker pull mysql:5.6 环境比较干净,没有正式环境配置的那么多参数,也没有写限制的数据库语句,按照自己搭建主从的方式做了一遍没问题主从能复制 不能直接断定是镜像的问题 毕竟生产环境换镜像换数据库不可能的...复制多个参数,绝对不能像线上环境中binlog-do-db=1,2,3,4 逗号隔开虽说重启容器不会报错但是真的会影响主从数据复制 并不识别这样的语法 查看主的状态可以看出虽然状态一致但是错误的语句就是不同步数据

    66720

    Zabbix监控MySQL主从状态

    搭建MySQL主从后,很多时候不知道从的状态是否ok,有时候出现异常不能及时知道,这里通过shell脚本结合zabbix实现监控并告警 一般情况下,在MySQL的从上查看从的运行状态是通过Slave_IO_Running...agent端脚本编写及配置 说明:所有zabbix相关的脚本我都放在了/etc/zabbix/script/ 目录里面,下面这些都是在zabbix被监控端上操作,并且上面数据库是属于MySQL主从的从.../bin/bash #Desc:用于获取主从同步信息,判断主从是否出现异常,然后提交给zabbix #Date: 2019-06-06 #by:Lee-YJ USER="root" PASSWD="nae3eabo9naeli1Oov1a...-k mysql.slave[io] 0 server端web配置 1)配置Slave_IO_Running线程监控项 2)配置Slave_SQL_Running线程监控项 3)配置Slave_IO_Running...至此,就完成了MySQL主从中从的状态监控了。

    1.2K20

    一则mysql主从不同步问题分析

    开发环境出现了主从不同步,在slave节点上显示的SlaveIORunning: Connecting,SlaveSQLRunning: Yes,导致有些查询出现不一致的情况 问题分析 一般这种问题出现的原因主要有以下五点...: 主库机器和从库机器网络不通 可以互ping的方式来查 密码不对 mysql -uroot -p 以对应的用户名和密码登录master mysql server重新对slave授权来排查,具体授权方式见下文...master和slave的pos不正确 在master机器上mysql -uroot -p 登录,然后执行show master status \G; 查看pos和binXX.log的情况; 在slave...从上面两点开始怀疑是不是用户权限的问题,于是到master mysql控制台操作: mysql> grant all privileges on *.* to host112@"slave host"...Query OK, 0 rows affected (0.01 sec) 再查询从库状态 看到 SlaveIORunning: Yes SlaveSQLRunning: Yes 总结 一般情况下出现主从不一致要从上面几个方面排查

    1.4K20

    使用python对mysql主从进行监控

    1.编写python的监控脚本   A.通过获取mysql库中的状态值来判断这个mysql主从状态是否正常 ?        B.进行两个状态值的判断 ?        ...send_msg.py       这里出现一个问题,就是手工能执行脚本,但定时任务时不能执行python脚本,参考解决方法:   1.将脚本中的中文进行删除或更改为英文         2.在对日志监控查看时...-uroot -p密码-S /tmp/mysql.sock \"-e show slave '自定义名称' status\G\"|grep \"Slave_SQL_Running\"")   #...获取IO_Running 的状态值   IO=os.popen("mysql -uroot -p密码 -S /tmp/mysql.sock \"-e show slave '自定义名称...' status\G\"|grep \"Slave_IO_Running\"")   #获取IP地址   IP=os.popen("mysql -uroot -p密码 -S /tmp

    1.4K20

    mysql主从同步(4)-Slave延迟状态监控

    之前部署了mysql主从同步环境(Mysql主从同步(1)-主从/主主环境部署梳理),针对主从同步过程中slave延迟状态的监控梳理如下: 在mysql日常维护工作中,对于主从复制的监控主要体现在: 1...)检查数据是否一致;主从数据不同步时,参考下面两篇文档记录进行数据修复: mysql主从同步(3)-percona-toolkit工具(数据一致性监测、延迟监控)使用梳理 利用mk-table-checksum...监测Mysql主从数据一致性操作记录 2)监控主从同步延迟,同步延迟的检查工作主要从下面两方面着手: 1.一般的做法就是根据Seconds_Behind_Master的值来判断slave的延迟状态。...可以通过监控show slave status\G命令输出的Seconds_Behind_Master参数的值来判断,是否有发生主从延时。...slave同步状态中的: 1)Slave_IO_Running、Slave_SQL_Running状态值,如果都为YES,则表示主从同步;反之,主从不同步

    2.4K70

    MySQL 主从延迟监控脚本(pt-heartbeat)

    对于MySQL数据库主从复制延迟的监控,我们可以借助percona的有力武器pt-heartbeat来实现。...有关pt-heartbeat工具的安装可以参考:percona-toolkit的安装及简介     有关pt-heartbeat工具的介绍可以参考:使用pt-heartbeat监控主从复制延迟 1、脚本概述...定期的方式可以使用cron job比如每1分钟或5分钟)    b、通过设定指定的延迟阀值来判断当时的延迟性是否在可控范围    c、一旦当前的延迟大于指定阀值,则马上使用--monitor方式不停的监控其延迟性并写入到日志文件...   d、对于--monitor方式,其进程运行超过30分钟,自kill其进程,以避免无限期运行导致日志过大,空间不够用 2、脚本内容 [mysql@SZDB run]$ more ck_slave_lag.sh...Remove history slave lag log. find $LogDir -name "*slave_lag*" -ctime +$Rentition -delete exit 3、部署参考 [mysql

    1.3K10

    Zabbix实现对MySQL数据库主从监控

    1.主从关系建立 配置MySQL-master端: 1)修改mysql-master的配置文件 [root@localhost ~]# vim /etc/my.cnf [mysqld] server_id...从服务主机并添加代理 3)添加一个mysql模板 4)监控服务端命令行测试,获取msyql数据库key的值,能够获取值,则证明监控端与被监控端成功建立连接 root@ubuntu1804:~# zabbix_get...zabbix zabbix 1235 Jul 16 01:00 /tmp/localhost-mysql_cacti_stats.txt 6.创建自定义mysql主从监控模板、监控项 在mysql-slave...5)在应用集中添加监控项 6)添加触发的动作,当数值大于65证明连接失败 7)给指定监控项创建图形显示 8)将自定义创建好的模板添加到需要监控mysql-slave主机 9)再查看mysql-slave...主机图形,红色为警戒线,绿色为正常 10)当mysql-slave服务挂掉时在查看此图,获取的数值已经超过红色警戒线,证明主从连接断开,已挂 11)仪表盘出现报警故障信息 12)进入报警查看详情

    2.9K20

    MySQL 8 主从延迟监控(复制可观测性)

    作者 | Frederic Descamps 来源 |https://dev.mysql.com/blog-archive/mysql-8-and-replication-observability/...大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看 MySQL 8 主从延迟监控(复制可观测性),欢迎点击上方蓝字“JiekeXu DBA之路”关注我的公众号,标星或置顶,更多干货第一时间到达...我们中的许多老 MySQL DBA 都会使用 SHOW REPLICA STATUS 中Seconds_Behind_Source 来查找(异步)复制的状态和监控延迟。...但是,MySQL 复制已经发展了很多,官方复制团队已经努力包含有关 MySQL 可用的所有复制风格的许多有用信息。 例如,我们添加了并行复制、组复制等。旧版“显示副本状态”结果中缺少所有这些信息。...英文原文:https://dev.mysql.com/blog-archive/mysql-8-and-replication-observability/ 全文完,希望可以帮到正在阅读的你,如果觉得此文对你有帮助

    67520

    Mysql主从

    前提: mysql主从的搭建前提有: 两台虚拟机 两台虚拟机上都装有mysql,并且版本一样,两边的mysql数据库文件一致,mysql的安装方式我在前面博客已经介绍过了。...环境: Host Role IP mysql-1 Master 192.168.30.106 mysql-2 Slave 192.168.30.107 搭建 在主从服务器上都创建一个用户 $ mysql..., mysql如何减少主从复制延迟: 如果延迟比较大,就先确认以下几个因素: 从库硬件比主库差,导致复制延迟 主从复制单线程,如果主库写并发太大,来不及传送到从库 就会导致延迟。...,如果连接建立失败,间隔多久后重试 通常配置以上2个参数可以减少网络问题导致的主从数据同步延迟 MySQL数据库主从同步延迟解决方案 最简单的减少slave同步延时的方案就是在架构上做优化,尽量让主库的...另外就是使用比主库更好的硬件设备作为slave 扩展 主从还能配合MySQL中proxy实现真正意义的读写分离,还能配合keepalived做主从切换高可用,还能配合mysqljump做异地备份,在从库定时物理备份

    2.7K10

    MySQL主从、字典死锁、连接数的Python监控脚本

    最近,公司的系统在天津增加了不少异地容灾,其中就有异地双主 MySQL。由于容灾环境一般只会在出现较大的网络故障或故障演习的时候用到,所以,容灾系统的可用性就只能靠监控了。...所以,这次就写了一个 MySQL 的集中监控脚本,后续有新的监控加入也可以非常方便的拓展。 Python 脚本: #!.../usr/bin/python # MySQL主从集中监控脚本 # 请在MySQL上执行如下语句,将跑脚本的机器授权一个db_monitor账号。...身上新增一个 db_monitor 账号,用于监控机远程登录 MySQL(见脚本注释部分语句): ?...; ②、支持 MySQL 连接失败的监控; ③、支持 MySQL 主从复制的延迟和错误监控 ④、支持 MySQL 的连接数和字典锁数监控 ⑤、更多监控可以参考继续添加.....

    1.7K70

    MySQL主从搭建

    生产环境中一旦与数据(缓存也不例外)扯上关系的一律不由k8s统一管理 因此,别想一键式部署了,只能老老实实单独部署 再此,就记录一下搭建过程,分享给小伙伴们,避免浪费时间 废话不多说,上车 下载 没有安装mysql...=103 log-bin = mysql-bin auto-increment-increment = 2 auto-increment-offset = 1001 2、进入Mysql,分别为二台master...创建各种的用户供对方使用 温馨提示: 本案例为双主从,也就是master同步到node,node同步到master。...单主从,就只需要不执行带*即可 #master的机器上 CREATE USER 'master'@'%' IDENTIFIED BY '123456';   #node的机器上(*) CREATE USER....000026',MASTER_LOG_POS=0; slave start; show slave status; 4、数据库主从日志很大 设置只保留30天的binlog (临时,重启mysql

    2.4K10

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券