Redis 的持久化方式有哪些?

发布于

一、RDB(快照)

  • 原理:在某个时间点把内存数据序列化写入 dump.rdb。
  • 触发:save(阻塞)、bgsave(fork 子进程)、自动配置(save 900 1)。
  • 优点:文件紧凑、恢复快。
  • 缺点:可能丢失最后一次快照后的数据。

二、AOF(追加日志)

  • 原理:把写命令追加到 appendonly.aof。
  • 刷盘策略:always(每条)、everysec(每秒,默认)、no(系统决定)。
  • 优点:数据更安全。
  • 缺点:文件大、恢复慢。

三、混合持久化(Redis 4.0+)

AOF 重写时,先把内存数据以 RDB 格式写入文件开头,再把增量命令以 AOF 格式追加。兼顾恢复速度和数据安全。

四、选择

  • 可以容忍丢失分钟级数据 → RDB。
  • 数据重要、尽量不丢 → AOF(everysec)。
  • 生产常用:混合持久化。