1.应用场景
- 高可用性:多个节点保存同样的数据,slave可提供备用环境。
- 数据安全:slave可以独立备份,不影响master
- 分析:可给予slave做数据分析
- 远程数据分发:异地灾备
2.实现方案原理
复制主要有2个动作:
- slave从master抽取binlog
本动作由master和slave的IO线程完成。
类似数据的ETL,数据源信息在master.info文件,时间戳在relay-log.info文件
抽取到的日志保存在relaylog中,供salve的SQL线程消费 - slave读取relaylog并执行
SQL线程与IO线程是异步的,采用生产-消费者模型
SQL线程的时间戳在relay-log.info文件
3.部署过程
4.特点
- 基于binlog,较简单
- 是异步复制,不能完全保证数据一致性
- 生产-消费者模型,值得借鉴