温馨提示×

centos redis配置怎样备份

小樊
35
2026-09-14 23:40:49
栏目: 云计算

在 CentOS 上备份 Redis,常见有RDB 备份、AOF 备份、手动拷贝文件、主从+定时脚本几种方式。下面按最常用、最安全的方式给你说明。


一、确认 Redis 数据目录(非常重要)

先查看 Redis 配置:

redis-cli config get dir
redis-cli config get dbfilename

一般默认:

  • 数据目录:/var/lib/redis
  • 数据文件:dump.rdb

二、方式一:利用 RDB 文件备份(最常用)

1. 手动触发备份

redis-cli save
# 或(不阻塞)
redis-cli bgsave

2. 拷贝 RDB 文件

cp /var/lib/redis/dump.rdb /backup/redis/dump_$(date +%F).rdb

✅ 适合:

  • 定时冷备
  • 灾备拷贝到其它机器

三、方式二:AOF 文件备份(更完整)

如果开启了 AOF:

redis-cli config get appendonly

若为 yes,备份:

cp /var/lib/redis/appendonly.aof /backup/redis/

可定期执行:

redis-cli bgrewriteaof

四、方式三:写定时备份脚本(推荐)

1. 创建脚本

vi /usr/local/bin/redis_backup.sh

内容:

#!/bin/bash
BACKUP_DIR=/backup/redis
DATE=$(date +%F_%H-%M)

mkdir -p $BACKUP_DIR
redis-cli bgsave
sleep 5
cp /var/lib/redis/dump.rdb $BACKUP_DIR/dump_$DATE.rdb

2. 赋权

chmod +x /usr/local/bin/redis_backup.sh

3. 加入 crontab

crontab -e

每天凌晨 2 点:

0 2 * * * /usr/local/bin/redis_backup.sh

五、方式四:主从 + 备份(生产推荐)

  • 从节点专门做备份
  • 主节点不中断服务
  • 从节点定期 bgsave

六、恢复 Redis 备份

  1. 停止 Redis
systemctl stop redis
  1. 覆盖文件
cp dump.rdb /var/lib/redis/
  1. 启动
systemctl start redis

七、注意事项(很重要)

  • ❌ 不要直接 cp 正在写入的 AOF(先 bgrewriteaof
  • ✅ 备份前用 bgsave
  • ✅ 备份文件权限要和 Redis 用户一致(通常是 redis

如果你愿意,我可以:

  • 给你一套生产级 Redis 备份方案
  • 或针对 CentOS 7 / 8 / Stream 写具体命令
  • 或帮你写 rsync 到远程服务器 的脚本

0