这是一个或许对你有用的社群 一对一交流/面试小册/简历优化/求职解惑欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料《项目实战视频》从书中学往事中“练”《互联网高频面试题》面朝简历学习春暖花开《架构 x 系统设计》摧枯拉朽掌控面试高频场景题《精进 Java 学习指南》系统学习互联网主流技术栈《必读 Java 源码专栏》知其然知其所以然这是一个或许对你有用的开源项目国产Star破10w的开源项目前端包括管理后台、微信小程序后端支持单体、微服务架构RBAC权限、数据权限、SaaS多租户、商城、支付、工作流、大屏报表、ERP、CRM、AI大模型、IoT物联网等功能多模块https://gitee.com/zhijiantianya/ruoyi-vue-pro微服务https://gitee.com/zhijiantianya/yudao-cloud视频教程https://doc.iocoder.cn【国内首批】支持 JDK17/21SpringBoot3、JDK8/11Spring Boot2双版本三大日志一句话定位核心区别对比表深入解析关键协作两阶段提交2PC面试怎么答这是一个非常经典的面试题。三大日志是 MySQL 保证数据安全、事务特性和高可用的核心机制搞清楚它们的区别和协作关系面试基本稳了。三大日志一句话定位Redo Log管提交了的数据绝对不能丢持久性Undo Log管没提交的事务必须能回滚原子性和读的时候不阻塞写MVCCBinlog管数据要能复制和恢复到任意时间点归档与同步基于 Spring Boot MyBatis Plus Vue Element 实现的后台管理系统 用户小程序支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能项目地址https://github.com/YunaiV/ruoyi-vue-pro视频教程https://doc.iocoder.cn/video/核心区别对比表特性Redo LogUndo LogBinlog所属层级InnoDB 引擎层InnoDB 引擎层MySQL Server 层日志类型物理逻辑日志逻辑日志逻辑日志主要用途崩溃恢复事务回滚 MVCC主从复制 数据恢复写入时机事务进行中不断写入修改数据时生成事务提交后一次性写入生命周期循环覆盖写入事务结束后由 purge 清理追加写入可长期保存存储形式固定大小文件ib_logfile0/1回滚段表空间一部分独立文件序列mysql-bin.xxx基于 Spring Cloud Alibaba Gateway Nacos RocketMQ Vue Element 实现的后台管理系统 用户小程序支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能项目地址https://github.com/YunaiV/yudao-cloud视频教程https://doc.iocoder.cn/video/深入解析Redo Log崩溃恢复的安全气囊核心思想Write-Ahead Logging。数据页的任何修改必须先写日志再写磁盘。工作流程事务修改数据 → 变更写入 Redo Log Buffer → 按策略刷盘到ib_logfile→ 即使崩溃也能根据 Redo Log 重做已提交数据。为什么需要它直接写数据页是随机 IORedo Log 是顺序追加 IO——将随机写转化为顺序写性能和安全性都提升了。Undo Log回滚与多版本的时光机作用一事务回滚。执行ROLLBACK时InnoDB 用 Undo Log 中的反向记录恢复数据到事务前状态。作用二MVCC。其他事务做快照读时InnoDB 通过 Undo Log 链构造历史版本提供一致性视图。这是可重复读RR隔离级别的基石。Binlog数据同步的搬运工记录模式Statement记录原始 SQLRow默认推荐记录每行数据变化Mixed混合模式核心用途主从复制Master 将 Binlog 发给 Slave 重放数据恢复全量备份 Binlog 可恢复到任意时间点关键协作两阶段提交2PC为保证 Redo Log 和 Binlog 的一致性即主从数据一致MySQL 使用内部两阶段提交。这是面试高频深入考点。事务提交时Prepare 阶段InnoDB 将 Redo Log 标记为PREPARE刷盘Write Fsync BinlogServer 层写入 Binlog 并刷盘Commit 阶段InnoDB 将 Redo Log 标记为COMMIT为什么需要 2PC假设先写 Redo Log 后写 Binlog中间崩溃 → 主库有数据但从库没有 → 主从不一致。2PC 保证只要 Binlog 写成功Redo Log 就必须提交。崩溃恢复时检查 Binlog 中是否有该事务记录决定提交还是回滚。面试怎么答简短版30 秒Redo Log 保证持久性——提交的数据不丢Undo Log 保证原子性和 MVCC——回滚和快照读Binlog 保证复制和恢复——主从同步和按时间点恢复。三者通过两阶段提交协作保证 Redo Log 和 Binlog 一致。加分点主动提到 WAL 思想Redo Log 将随机写变顺序写、MVCC 和 Undo Log 链的关系、2PC 的崩溃恢复逻辑。这三个点能让面试官知道你真的理解了不是背八股。欢迎加入我的知识星球全面提升技术能力。 加入方式“长按”或“扫描”下方二维码噢星球的内容包括项目实战、面试招聘、源码解析、学习路线。文章有帮助的话在看转发吧。 谢谢支持哟 (*^__^*