[MySQL] 主从延迟现象及原理分析

本文探讨了MySQL主从延迟的现象,分析了其原理,包括主从复制的线程模型和可能的延迟原因。创建索引导致的主从延迟问题是实例之一。针对延迟问题,提出了业务选型、执行时间选择、硬件配置升级和并行复制等解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、现象

凌晨对线上一张表添加索引,表数据量太大(1亿+数据,数据量50G以上),造成主从延迟几个小时,各个依赖从库的系统无法查询数据,最终影响业务。

现在就梳理下主从延迟的原理。

二、原理

根据 MySQL 官方文档 MySQL Replication Implementation Details 中的描述,MySQL 主从复制依赖于三个线程:master 一个线程(Binlog dump thread),slave 两个线程(I/O threadSQL thread)。主从复制流程如下图:

主从复制原理

master 服务器和 slave 服务器连接时,创建 Binlog dump thread 以发送 bin log 数据:

  1. 一个 Binlog dump thread 对应一个 slave 服务器;
  2. Binlog dump threadbin log 获取数据时会加锁,获取到数据后,立即释放锁。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值