- • 主库:增删改写入 binlog
- • 从库 IO 线程:TCP 连主库请求 binlog
- • 主库 IO dump 线程:发送 binlog
- • 从库:写 relay 日志 → SQL 线程重放
- • 异步:性能好,主库宕机可能丢刚写入的数据
- • 半同步 AFTER_SYNC(5.7 默认):先同步从库再提交
- • 提交成功 = binlog 必已到从库 → 切换不丢数据
- • GTID:免手动找 binlog 位点,搭建更省心
- • 根因:主库并行写,从库单线程回放
- • 监控:percona-toolkit 的 pt-heartbeat
- • 从库并行复制:slave_parallel_workers > 0
- • 强一致读:中间件里强制读写都走主库