温馨提示×

centos redis配置怎么备份

小樊
41
2026-09-11 18:41:05
栏目: 云计算

在 CentOS 上备份 Redis,常见有RDB 备份、AOF 备份、手动拷贝文件、主从复制几种方式。下面按最常用、最实用的方式给你说明。


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

先看 Redis 配置文件:

vim /etc/redis.conf

重点关注:

dir /var/lib/redis
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"

常见路径:

  • RDB 文件:/var/lib/redis/dump.rdb
  • AOF 文件:/var/lib/redis/appendonly.aof

二、方式一:利用 RDB 自动备份(推荐)

1. 手动触发 RDB 备份

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

然后拷贝文件:

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

三、方式二:直接拷贝 RDB / AOF 文件(必须停写或 bgsave)

⚠️ 不建议直接 cp 正在写入的 RDB,最好先 bgsave

redis-cli bgsave
sleep 5
cp /var/lib/redis/dump.rdb /backup/redis/

AOF 同理:

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

四、方式三:使用 AOF(更安全)

如果 appendonly yes

  • Redis 会持续写 AOF
  • 备份 AOF 文件即可

可定期:

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

五、方式四:主从复制(生产推荐)

在另一台 CentOS:

replicaof <主RedisIP> 6379

从节点自动同步数据,相当于实时备份。


六、写个简单备份脚本(示例)

#!/bin/bash
BACKUP_DIR=/backup/redis
DATE=$(date +%F)

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

加入定时任务:

crontab -e
0 2 * * * /usr/local/bin/redis_backup.sh

七、恢复方式(补充说明)

把备份文件放回:

cp dump.rdb /var/lib/redis/
systemctl restart redis

如果你愿意,我可以:

  • 给你一套 生产级 Redis 备份方案
  • 或针对 Redis 集群 / 哨兵 说备份方法
  • 或帮你写 systemd + 定时备份

你现在是单机还是集群?

0