MySQL数据库主从原理理解
在日常项目测试过程中,经常会遇到mysql数据库的主从模式,也就是主从复制和读写分离,主数据库(Master)数据有更新时,会同步到从数据库(Slave),Master数据库负责写数据,而多台Slave数据库负责读数据,这样便提升了数据库的并发性能。
主从复制的原理

主要分为以下几个步骤:
1. 主数据库(Master)如果有数据更新会被写到二进制日志(binary log)中;
2. 从数据库启用slave服务,与主数据库连接;
3. 从数据库创建一个I/O线程,从主数据库读取二进制日志并且写入到中继日志(Relay log)中
4. 从数据库创建一个SQL线程,从中继日志中读取内容,将更新的内容写到从数据库
主从复制的作用
1. 如果主数据库发生故障,可以切换到从数据库继续使用,避免数据的丢失;
2. 提高了数据库的并发性能
读写分离
顾名思义就是读和写是分离的,主数据负责事务的写操作,包括insert、update和delete的操作,而从数据库则是负责读操作,即select操作。
主从同步延迟
因为读和写的操作时分开的,所以有些场景下可能会存在主从同步有延迟。
延迟高的原因
- 网络存在延迟
- 主从设备硬件导致
- 不是同步复制,而是异步复制
- 主数据库的并发高
优化延迟
- 优化网络
- 优化mysql的参数
- 从库使用高性能主机
- 从库使用SSD磁盘

浙公网安备 33010602011771号