三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

论mysql的redo_log和bin_log,redis的RDB和AOF的类似记忆

论mysql的redo_log和bin_log,redis的RDB和AOF的类似记忆
  • redo log ≈ 类似 RDB(快照思想)
  • binlog ≈ 类似 AOF(日志追加思想)

但它们不是一回事,只是设计思路很像


1. redo log ↔ RDB 像在哪里?

共同点

  • 都是物理层面的记录
  • 都是为了崩溃恢复
  • 都是为了重启后把数据恢复回来

核心区别(面试必说)

  • redo log:InnoDB 日志,循环写,固定大小,只装 “脏页修改”作用:崩溃恢复,保证事务不丢
  • RDB:Redis 全量快照,全量数据拍个照作用:Redis 重启恢复整个数据集

一句话:redo 是 “页级物理修改记录”,RDB 是 “整个内存快照”


2. binlog ↔ AOF 像在哪里?

共同点

  • 都是追加写
  • 都是逻辑日志 / 命令日志
  • 都能用来数据恢复、主从同步

核心区别

  • binlog:MySQL Server 层,逻辑 SQL 日志,主从 + 恢复
  • AOF:Redis 日志,记录写命令,用于恢复 + 保证不丢

一句话:binlog 是 MySQL 的逻辑操作日志,AOF 是 Redis 的命令日志

← 返回列表