# 读写分离
MySQL主从复制是一个非常成熟的技熟。使用范围也非常的广。适作范围:
* 读的请求特别多,写不多场景场(商品展示,新闻类业务)
* 经营分析类业务可以配置独立的从库做统计分析
* 多IDC结构,利用主从复制,把数据库分布在多IDC中。两地三中心,这种结构也可以使用复制构建。
* 其它...
## MySQL现在支持复制类型
### 根据Binlog格式生产中有的两种形态:
1. 传统复制 binlog position 模型+row(建议放弃)
2. 基于GTID复制+row格式 (推荐生产中使用:MySQL 5.7.20后的版本),目前主流的云厂商基本都实现了GTID+Row格式复制。
### 根据复制一致性要求把复制分为:
1. 异步复制。
2. 半同步复制(增强半同步复制)
**两种复制形式使用都要基于GTID+Row**
### 读分离使用要求
* 交易环节,所有的请求全部走主库
* 不用把所请读操作都到从库请求,只用把读占比较多高的1-2个SQL放到从库,效果非常显著
* 压力不大的情况下可以借助于中间件,进行读写分离,从而减小开发人员的工作量。推荐中间件: ProxySQL