当前位置:网站首页>Mysql主从延迟的原因和解决方案
Mysql主从延迟的原因和解决方案
2022-08-05 06:13:00 【棒棒吃不胖】
MySQL主从复制
首先说明一下,binlog记录的方式主要是两种(排除Mixed)
statement--SBR 基于操作的SQL语句
优点:并不需要记录每一条SQL语句和每一行数据的变化,减少了binlog日志量,,节约了I/O,提高了性能。
缺点:在某些情况下导致主备数据不一致。
row---RBR 基于行的变更情况(变化前后的数据记录)
优点:不记录每条SQL语句的上下文信息,只记录数据的详细修改细节,最为安全。
缺点:会产生大量日志,消耗磁盘空间。
MySQL的主从复制过程,可以参考下面的文章,此处省略。
主从延迟
t1时刻,主库执行完事务,并写入binlog
t2时刻,从库接收主库的binlog(IO线程),并写入中继日志
t3时刻,从库的SQL线程执行SQL语句,完成事务
主从延迟,就是从库执行完成到主库执行完成中间的时间差大于(t3-t1)
主从延迟的可能出现的原因与解决方案
1)主从服务器的硬件差异。从库机器性能差,无法及时同步主库数据,只需要更换新的设备或设备保持一致即可。
2)从库的读压力大。一般主库“写”,从库“读”。大量“读”请求命中从库,会大量消耗从库系统资源,进而影响从库的同步速度。此时可以构建一主多从架构,共同分担“读”请求的压力。
3)大事务。如果事务在主库执行15分钟,在从库同步也至少15分钟,造成主从延迟。如果可以,事务分批进行。
4)网络延迟。网络通信状况也会影响主从复制(影响从库的IO线程获取主库binlog),只能升级带宽,优化网络。
5)从库过多。从节点一般3-5个最佳。
边栏推荐
猜你喜欢
随机推荐
【5】Docker中部署MySQL
【内推】新相微电子
2022杭电多校六 1007-Shinobu loves trip(同余方程)
LabVIEW中如何实现任意形状的不规则按键
防抖函数和节流函数
【网友真实投稿】为女友放弃国企舒适圈,转行软件测试12k*13薪
文本样式这一篇文章就够了
【FAQ】What is Canon CCAPI
文件内音频的时长统计并生成csv文件
【Go】IM系统Centrifugo
h5页面回退到微信小程序并携带参数
MySQL:JDBC编程
图像处理、分析与机器视觉一书纠错笔记
ndk编译so库
盒子模型大详解
Writing OpenCV in VSCode
export使用
Promise (三) async/await
Technical Analysis Mode (7) Playing the Gap
(四)旋转物体检测数据roLabelImg转DOTA格式









