暂无图片
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
刚阿德

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

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

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

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

暂无图片 评论
暂无图片 有用 5
刚阿德
2023-11-17
正解,延迟监控从原生改为pt-heartbeat也是必要的
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏