Redis 主要有 两种原生持久化方式,以及一种折中/变种方案。下面按常见程度和使用场景说明。
在指定时间点,把内存中的数据生成二进制快照保存到磁盘(默认文件:dump.rdb)。
save 900 1 # 900秒内至少1次修改
save 300 10
save 60 10000
SAVE # 同步,阻塞
BGSAVE # 异步,后台 fork 子进程
✅ 文件小
✅ 恢复速度快
✅ 适合备份、灾备
❌ 可能丢失最后一次快照后的数据
❌ BGSAVE 时 fork 可能阻塞(数据大时明显)
把每一次写命令追加到文件(默认:appendonly.aof)。
appendonly yes
appendfsync everysec # 每秒刷盘(推荐)
always:每次写都刷盘(最安全,最慢)everysec:每秒刷盘(推荐)no:交给系统(最快,最不安全)AOF 会越来越大,Redis 会自动/手动压缩:
BGREWRITEAOF
✅ 数据更安全(可做到秒级丢失)
✅ 可读(文本命令)
❌ 文件大
❌ 恢复速度慢于 RDB
aof-use-rdb-preamble yes
✅ 启动快
✅ 数据更安全
✅ 生产环境常用
| 场景 | 推荐 |
|---|---|
| 缓存 | RDB |
| 重要业务数据 | AOF |
| 生产通用 | RDB + AOF |
| 纯内存、可丢 | 不持久化 |
如果你愿意,我可以:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。