温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

redis怎样持久化数据

发布时间:2026-11-07 16:15:39 来源:亿速云 阅读:93 作者:小樊 栏目:关系型数据库

Redis 主要有 两种原生持久化方式,以及一种折中/变种方案。下面按常见程度和使用场景说明。


一、RDB(Redis Database,快照持久化)

原理

在指定时间点,把内存中的数据生成二进制快照保存到磁盘(默认文件:dump.rdb)。

触发方式

  • 自动(配置文件)
save 900 1      # 900秒内至少1次修改
save 300 10
save 60 10000
  • 手动命令
SAVE      # 同步,阻塞
BGSAVE    # 异步,后台 fork 子进程

优点

✅ 文件小
✅ 恢复速度快
✅ 适合备份、灾备

缺点

❌ 可能丢失最后一次快照后的数据
❌ BGSAVE 时 fork 可能阻塞(数据大时明显)


二、AOF(Append Only File,日志持久化)

原理

把每一次写命令追加到文件(默认:appendonly.aof)。

配置示例

appendonly yes
appendfsync everysec   # 每秒刷盘(推荐)

appendfsync 选项

  • always:每次写都刷盘(最安全,最慢)
  • everysec:每秒刷盘(推荐)
  • no:交给系统(最快,最不安全)

AOF 重写(优化)

AOF 会越来越大,Redis 会自动/手动压缩:

BGREWRITEAOF

优点

✅ 数据更安全(可做到秒级丢失)
✅ 可读(文本命令)

缺点

❌ 文件大
❌ 恢复速度慢于 RDB


三、RDB + AOF 混合模式(Redis 4.0+)

原理

  • AOF 文件中前半部分是 RDB 格式
  • 后面是增量 AOF 命令

开启

aof-use-rdb-preamble yes

✅ 启动快
✅ 数据更安全
✅ 生产环境常用


四、如何选择?

场景 推荐
缓存 RDB
重要业务数据 AOF
生产通用 RDB + AOF
纯内存、可丢 不持久化

五、恢复顺序(Redis 启动)

  1. 如果 AOF 开启 → 优先用 AOF
  2. 否则用 RDB

如果你愿意,我可以:

  • 给你一份生产环境 Redis 持久化配置模板
  • 讲 RDB/AOF 对性能的影响
  • 或结合 Docker / Kubernetes 场景说明
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手