---
title: 什么是MySQL的主从同步机制
published: 2025-09-09
description: ''
image: ''
tags: ['MySQL', '主从同步']
category: '中间件 > MySQL'
draft: false 
lang: ''
---
# 什么是MySQL的主从同步机制

MySQL的主从同步机制是一种数据复制技术，用于将住数据库上的数据同步到一个或者多个从数据库中。
主要是通过二进制日志 binlog 实现数据的复制。
主数据库在执行写操作的时候，会把这些操作记录在binlog里面，然后推送给从数据库，从数据库重放对应的日志即可完成复制。

# MySQL主从复制类型

MySQL支持异步复制，同步复制，半同步复制

异步复制： 主库不需要等待从库的响应（性能高，一致性低）
同步复制： 主库同步等待所有从库确认收到的数据（性能差，一致性高）
半同步复制： 主库等待至少一个从库确认收到数据（性能折中，数据一致性比较高）

## 异步复制

![](https://blog.meowrain.cn/api/i/2025/09/09/y283pk-1.webp)

MySQL默认是异步复制。


# 主从复制流程

1. 线程创建，从服务器创建一个IO线程，一个SQL线程，IO线程负责读取主服务器上的binlog，并写入到本地relay log中，SQL线程负责读取relay log中的日志，并执行到从服务器上
2. 连接建立： 从服务器的IO线程与主服务器建立连接，主服务器的binlog dump线程和从服务器的IO线程进行交互
3. 从服务器的IO线程告诉主服务器开始日志传送的对应位置
4. 主服务器更新的时候把记录保存到binlog中
5. 主服务器dump线程检测到binlog变化，从指定位置开始读取，从服务器进行拉取。
6. 中继日志存储： 从服务器的IO线程把接收到的内容保存到relay log中
7. 数据写入： 从服务器的SQL线程读取relay log中的内容，进行数据写入。

# 主从复制延迟

主从复制延迟是指主服务器和从服务器之间数据同步的时间差。
主从复制延迟的原因有很多，例如网络延迟，主服务器和从服务器之间的硬件差异，主服务器和从服务器之间的操作系统差异，主服务器和从服务器之间的MySQL版本差异，主服务器和从服务器之间的MySQL配置差异等。

解决方法：
优化网络
提高从服务器性能
利用MySQL并行复制功能提升效率，减少延迟。https://blog.csdn.net/weixin_42587823/article/details/144842206