第一步:先说明 Redis 的两种持久化机制
Redis 的备份主要靠持久化,有两种方式:
-
RDB(Redis Database)
- 在指定时间间隔内生成数据集的时间点快照(一个
.rdb文件)。 - 默认配置下,如果满足类似
save 900 1的条件,会自动触发 bgsave 生成 rdb 文件。 - 优点:文件紧凑,适合备份、灾难恢复;恢复大数据集比 AOF 快。
- 缺点:可能会丢最后一次快照之后的数据。
- 在指定时间间隔内生成数据集的时间点快照(一个
-
AOF(Append Only File)
- 记录每个写操作到日志文件(
.aof),重启时重放这些操作来恢复数据。 - 可以配置
appendfsync always/everysec/no来控制同步频率。 - 优点:数据更完整,最多丢 1 秒数据。
- 缺点:文件体积大,恢复慢。
- 记录每个写操作到日志文件(
第二步:说明备份策略
在实际中,我们通常会:
- 同时开启 RDB 和 AOF(保证数据安全且恢复快)。
- 定期将备份文件(RDB/AOF)复制到远端(如云存储、另一台机器),防止物理故障。
- 也可以使用Redis 主从复制,从节点作为热备份。