1. 概述
MySQL的主从复制功能可以帮助我们实现负载均衡和读写分离。
对于主服务器来说,主要负责写,从服务器主要负责读,这样的话,就会大大减轻压力,从而提高效率。
主从复制可以分为:
- 主从同步:当用户写数据主服务器必须和从服务器同步了才告诉用户写入成功,等待时间比较长。
- 主从异步:只要用户对主服务器写数据成功,立即返回给用户。
- 主从半同步:当用户访问主服务器写数据成功,并同步其中一个从服务器成功就返回给用户成功。
主从架构有以下几种形式:
- 一主一从
- 一主多从:一主多从是我们现在见的最多的主从架构,使用起来简单有效,不仅可以实现HA,而且还能读写分离,进而提升集群的并发能力。
- 多主一从
- 双主复制:双主复制,也就是可以互做主从复制,每个master既是master,又是另外一台服务器的salve。这样任何一方所做的变更,都会通过复制应用到另外一方的数据库中。
- 级联复制:级联复制模式下,部分slave的数据同步不连接主节点,而是连接从节点。因为如果主节点有太多的从节点,就会损耗一部分性能用于replication,那么我们可以让3~5个从节点连接主节点,其他从节点作为二级或者三级与从节点连接