Skip to content

RDB 和 AOF 的区别 ​

题目 ​

RDB 和 AOF 的区别是什么?

参考答案 ​

  • RDB:文件紧凑,恢复快,但可能丢最后一次快照后的数据
  • AOF:数据更完整,但文件更大,恢复更慢

所以很多线上环境会同时开启两者。

回答展开 ​

  • 这题最好从三个维度来对比:数据丢失窗口、恢复速度、文件大小与维护成本。
  • RDB 更像定期快照,恢复快、文件紧凑,但会丢最后一次快照后的数据;AOF 更像操作日志,数据更完整,但恢复更慢、文件更大。
  • 真正线上一般不会二选一,而是结合业务恢复目标同时启用两者,再配合 AOF 重写控制文件体积。

实际场景 ​

比如做商品缓存或配置缓存时,更关心服务重启后的恢复速度,RDB 就很有价值;如果是订单状态、延迟任务这类更怕丢数据的场景,则会更依赖 AOF。

努力工作 享受生活