本包目录(421 条)
数据结构与选型42 条
持久化56 条
主从与哨兵51 条Cluster 集群44 条内存与管理99 条性能与排障129 条

RDB 快照原理

RDB 是某一时刻全量数据的二进制快照:fork 出子进程把内存数据序列化写入临时文件,写完原子替换 dump.rdb,主进程全程只负责响应请求。

Redis 进阶速查数据更新于 2026-10-12
原理fork 子进程 + 写时复制(COW)
产物dump.rdb(默认文件名)
特点文件紧凑、恢复快、两次快照间的数据会丢

相关命令

相关命令
redis-cli BGSAVE
redis-cli INFO persistence | Select-String rdb_
redis-cli CONFIG GET dir
redis-cli CONFIG GET dbfilename
子进程写的是 temp-<pid>.rdb 临时文件,成功后 rename 为 dump.rdb,因此磁盘上不会出现半个快照。

易错点

  • fork 瞬间需要一份页表拷贝,内存越大耗时越长,大实例会出现百毫秒级停顿
  • 两次 RDB 之间宕机,这段时间的写入全部丢失,按可容忍丢失量决定快照频率

数据来源与参考

  • Redis 官方文档:RDB 持久化说明
  • Redis 官方文档:BGSAVE 命令
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌