MySQL主从复制
一:基本概念
主从复制是指将主数据库的 DDL 和 DML 操作通过二进制日志传到从数据库,然后在从数据库上对这些日志重新执行,从而使得从库和主库的数据保持同步。MySQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。
二:作用
1.主库出现问题,可以快速切换到从库提供服务(实现高可用架构,避免单点故障)
2.实现读写分离,降低主库的访问压力(在从库执行查询,分担主库查询压力)
3.可以在从库中执行备份,以避免备份期间影响主库服务
三:实现原理
MySQL主从复制原理
- master主库会在提交事务时,将数据变更记录到二进制文件 binlog中。
- 从库通过一个Iothread读取主库的二进制日志文件 binlog,写入到从库的中继日志 Relay log。
- slave通过一个SQLthread读取到中继日志,并重做中继日志中的事件,将改变反映它自己的数据。
使用 MySQL 主从复制可能存在以下问题:
- 主库宕机后,数据可能丢失
- 从库中只有一个SQLthread,主库写压力大,复制可能延时
解决方法:
- 增强半同步复制:号称无损半同步复制,解决数据丢失问题。
本文作者:爱慕
本文链接:https://www.cnblogs.com/aimu69/p/16028803.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步