返回
MySQL 日志体系与主从复制
百科(权威知识源 · 考试范围)
MySQL 日志体系与主从复制
日志是 MySQL 持久性、可靠性与高可用的基石。
MySQL 日志体系
- Redo Log(InnoDB 物理日志):记录页的修改,用于崩溃恢复(持久性)。
- Undo Log(逻辑日志):用于回滚与 MVCC 多版本读。
- Binlog(服务层二进制日志):记录逻辑数据变更,用于主从复制与数据恢复。命令:
SHOW BINLOG EVENTS。 - 其他:慢查询日志、错误日志、通用查询日志。
两阶段提交
为让 Redo Log 与 Binlog 保持一致(避免崩溃后数据与日志不一致),采用两阶段提交:
- Redo Log 写 prepare 状态。
- 写 Binlog。
- Redo Log 写 commit。
主从复制
主从复制原理:
- 主库将变更写入 Binlog。
- 从库的 IO 线程 拉取主库 Binlog,写入从库的 Relay Log。
- 从库的 SQL 线程 重放 Relay Log,完成数据同步。
复制模式:
- 异步复制(默认):主库写完即返回,不等从库。
- 全同步复制:等待所有从库确认。
- 半同步复制(semi-sync):至少一个从库确认。
基于主从可做读写分离(主写从读)。
分表分库
当单库/单表数据量过大,需拆分:
- 垂直拆分:按业务把表/库拆开(如订单库、用户库)。
- 水平拆分:按分片键把数据路由到多库多表(如按 user_id 分片)。
分表分库带来的挑战:
- 跨库查询、分布式事务、全局唯一 ID 生成、跨库 join 等。
总结
- Redo / Undo / Binlog 三日志各司其职:崩溃恢复、回滚 MVCC、主从复制。
- 两阶段提交保证日志一致。
- 主从复制 → 读写分离;分表分库 → 水平扩展,兼顾挑战。
考试信息
通过标准满分(错一道即与满分无缘,可把整卷答完看解析;重考不限次数)
时间限制不限时
单卷抽题数10 题
成绩窗口2026-09-14 ~ 2026-09-20
积分学费10 积分
支付方式满分后用积分支付(自主决定)
用积分支付:成绩长期保留,参与排名,积分学费含平台资助池;不支付:成绩保留至窗口截止后清空
积分无充值通道;积分不足 10 时,平台自动发放 100 积分。积分不可提现、不可转让、无现金价值。
排行榜(窗口期最短满分用时 · 前 0 名)
当前窗口(2026-09-14 ~ 2026-09-20)
该窗口暂无满分记录
课程(免费学习 · 共 0 门)
暂无课程
登录后可查看我的出题、测试记录并参加满分考试