教程 redis tutorial

RDB 快照

RDB(Redis Database)快照是 Redis 提供的持久化方式之一,通过将内存中的数据生成快照文件保存到磁盘,实现数据的持久化备份。

工作原理

Redis 会按照配置的触发条件,fork 出一个子进程,子进程负责将当前数据写入一个临时文件,然后替换旧的快照文件 dump.rdb,整个过程对主进程无阻塞。

配置方式

在 redis.conf 文件中配置触发快照的条件:

txt
save 900 1     # 900秒内如果至少有1个key被修改,就触发快照
save 300 10    # 300秒内如果至少有10个key被修改,就触发快照
save 60 10000  # 60秒内如果至少有10000个key被修改,就触发快照

快照文件位置

默认快照文件为 dump.rdb,存储在 Redis 工作目录(dir 配置)下。

手动触发快照

可以通过命令手动生成快照:

bash
SAVE      # 阻塞式保存,主线程等待完成
BGSAVE    # 异步保存,子进程完成后写入文件

优缺点

  • 优点:生成的快照文件体积小,加载速度快,适合做定期备份。
  • 缺点:快照之间的修改会丢失,存在数据丢失风险;保存时可能阻塞(SAVE 命令)。

应用场景

适合对数据持久化要求不是特别严格的场景,或者结合 AOF 作为混合持久化方案,提高数据安全性和恢复速度。