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,較簡單
- 是異步複製,不能完全保證數據一致性
- 生產-消費者模型,值得借鑑