暂无图片
mysql主备延迟问题
我来答
分享
暂无图片 匿名用户
mysql主备延迟问题

默认的异步下,主库上午10点执行了 一个 inser into aaa values (100);



如果主备有1个小时的延时的话,那么备库解析relaylog,那么它里面的inser into aaa values (100); 这个at 部分时间是多少?


2:如果想查看1周前某天,主备库是否有延时,能通过查看binlog 中同一个语句的执行时间来判断延迟吗?

比如主库是早上8点执行的,备库如果是9点执行的,就是延迟1小时

 (知道某个表的具体操作了)

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
大树666

1.个人感觉跟同步方式有关是sbr,rbr,mbr的哪一种,如果sbr在备库重放主库操作两库的同步时间应该是大差不差的。如果是rbr或者mbr速度可能会快点,只修改变更的行。

2.如果是生产平台的话应该不行,因为你无法确定一周前有没有别的sql影响了同步。变量太多不好判断。

暂无图片 评论
暂无图片 有用 11
打赏 0
刚阿德

延迟肯定要看监控,要看监控数据能不能保留那么久。

如果是排除业务问题,比如业务反馈,我插入一条数据,从/备库某短时间没查到。监控看不了的话,这种一般要依赖审计了

暂无图片 评论
暂无图片 有用 1
打赏 0
始于脚下

你这种办法只能作为参考,不能作为依据,MySQL主从延迟引起的因素是多方面的,除了常见的主机性能、网络延迟等因素外,还有事物大小的影响,比如主库执行一个操作近1个小时的事物,备库这1个小时只能等待,等主库事物1个小时执行完之后传输到备库,备库开始执行这个1个小时的事物,即使主库后续的事物都是秒级的,传到备库后也得这个1个小时的长事物执行完才能执行,这样延迟就会出现1个小时。后续在没有长事物的影响后,延迟可能会恢复到秒级,所以判断MySQL主从是否有延迟只有监控,出现超过n秒的延迟就去排查原因,最终根据监控数据得到正确的延迟时间。

暂无图片 评论
暂无图片 有用 5
打赏 0
刚阿德
2023-11-17
正解,延迟监控从原生改为pt-heartbeat也是必要的
回答交流
Markdown


请输入正文
提交
相关推荐
mysql5.7.35主从传输报表不存在
回答 2
用户和权限没问题?
MySQL的复制有什么限制?
回答 1
已采纳
因为MySQL自身固有的一些限制(比如:复制延迟过大、磁盘空间耗尽等),无论有没有出现明确的报错,MySQL复制都可能失败或不同步。有非常多的SQL函数和编程实践都无法可靠地被复制。通常,很难确保在生
mysql8.4 在shell脚本中查询mysql使用tee记录日志不生效
回答 2
这个我试了一下,好像不行,截图如下
mysql 、postgresql、达梦、人大金仓这些数据库如何将delete的表里的数据快速恢复?
回答 1
已采纳
mysql8.0貌似也支持了。。而且可以用binlogpg需要用备份archive来恢复了
MySQL数据文件能存放在不同的目录吗
回答 2
也可以看看这个https://www.modb.pro/db/100600
有没有办法不改源码。修改mysql版本号的?
回答 2
数据库端,不改代码肯定不能实现如果你在应用端展现就好说了啊。你想显示啥就显示啥。
输入mysql -u root -p之后显示 Lost connection to MySQL server at 'reading initial communication packet', system error: 0这个错误怎么解决呢?
回答 1
将/etc/my.cnf中的bindaddress参数修改成0.0.0.0,表示允许任何ip主机访问此数据库。这是由于库文件初始化连接MySQL时连接失败引起的。导致此错误的原因有:mysql设置文件
mysql连接navicat的时候报错1045怎么解决?
回答 1
已采纳
授予本地访问数据的权限:GRANTALLPRIVILEGESON.TO‘root’@‘localhost’IDENTIFIEDBY‘123456’WITHGRANTOPTION;刷新权限配置,使之生效
在mysql中,有哪些优化方法可用?
回答 3
官方文档专门有一章来讲mysql优化…这有篇相关的翻译https://cloud.tencent.com/developer/article/2156162
MySQL8.0的默认存储引擎是什么?
回答 2
innodb