第25章:备份与灾难恢复
本章目标
制定备份策略 + 模拟数据恢复
25.1 备份策略
bash
# 1. 定期备份 dump.rdb(每天/每小时)
cp /data/dump.rdb /backup/dump_$(date +%Y%m%d_%H%M).rdb
# 2. AOF 备份
cp /data/appendonly.aof /backup/
# 3. 异地备份
scp /backup/*.rdb backup-server:/redis-backup/
# 4. 自动化脚本(crontab)
0 2 * * * /scripts/redis-backup.sh25.2 恢复流程
bash
# 1. 停止 Redis
redis-cli SHUTDOWN SAVE
# 2. 替换数据文件
cp /backup/dump_20240115.rdb /data/dump.rdb
# 3. 重启 Redis
redis-server /etc/redis.conf
# 4. 验证
redis-cli DBSIZE25.3 生产环境检查清单
- [ ] RDB 自动触发配置(save 参数)
- [ ] AOF 开启 + appendfsync everysec
- [ ] 混合持久化开启(aof-use-rdb-preamble)
- [ ] 定期备份到异地
- [ ] 恢复流程文档化 + 定期演练
- [ ] 监控磁盘空间(RDB/AOF 文件大小)
本章小结
- 备份 = RDB 快照 + AOF 日志 + 异地
- 恢复 = 停服 → 替换文件 → 重启
- 定期演练恢复流程
练习题
- 写一个 Redis 备份脚本。
- 手动模拟:写入数据 → 备份 → 删除数据 → 恢复 → 验证。