MySQL主从复制
一:基本概念
主从复制是指将主数据库的 DDL 和 DML 操作通过二进制日志传到从数据库,然后在从数据库上对这些日志重新执行,从而使得从库和主库的数据保持同步。MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。

二:作用
1.主库出现问题,可以快速切换到从库提供服务(实现高可用架构,避免单点故障)
2.实现读写分离,降低主库的访问压力(在从库执行查询,分担主库查询压力)
3.可以在从库中执行备份,以避免备份期间影响主库服务
三:实现原理
MySQL主从复制原理

- master主库会在提交事务时,将数据变更记录到二进制文件 binlog中。
- 从库通过一个Iothread读取主库的二进制日志文件 binlog,写入到从库的中继日志 Relay log。
- slave通过一个SQLthread读取到中继日志,并重做中继日志中的事件,将改变反映它自己的数据。
使用 MySQL 主从复制可能存在以下问题:
- 主库宕机后,数据可能丢失
- 从库中只有一个SQLthread,主库写压力大,复制可能延时
解决方法:
- 增强半同步复制:号称无损半同步复制,解决数据丢失问题。

浙公网安备 33010602011771号