centos

centos redis备份与恢复方法

小樊
31
2026-01-02 02:43:20
栏目: 云计算

CentOS 7 上 Redis 的备份与恢复

一 核心思路与准备

二 备份步骤

  1. 确认 Redis 数据目录与文件名
    • 在 redis-cli 中执行:
      • CONFIG GET dir
      • CONFIG GET dbfilename
    • 也可直接查看配置文件:grep -E ‘^(dir|dbfilename)’ /etc/redis/redis.conf
    • 常见值:dir /var/lib/redisdbfilename dump.rdb
  2. 触发一致性快照
    • 非阻塞方式:redis-cli bgsave(推荐)
    • 阻塞方式:redis-cli save(仅在维护窗口使用)
  3. 复制 RDB 文件到安全位置
    • 示例:
      • cp /var/lib/redis/dump.rdb /opt/backup/redis-$(date +%F).rdb
      • 远程备份:scp /var/lib/redis/dump.rdb user@backup:/path/to/backup/
  4. 校验与留痕
    • 校验文件大小与时间戳;记录备份日志,必要时保留多份历史副本。

三 恢复步骤

  1. 准备恢复环境
    • 建议先停库:systemctl stop redis(避免写入冲突)。
    • 如原机恢复,先备份现有文件:mv /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.bak。
  2. 放置 RDB 文件并修复权限
    • cp -p /path/to/backup/dump.rdb /var/lib/redis/
    • chown redis:redis /var/lib/redis/dump.rdb
    • chmod 660 /var/lib/redis/dump.rdb
  3. 处理 AOF(关键点)
    • 若仅需从 RDB 时间点恢复,建议临时关闭 AOF:
      • 编辑 /etc/redis/redis.conf,将 appendonly 设为 no;
      • 或将现有 .aof 文件重命名备份(如 mv /var/lib/redis/*.aof /var/lib/redis/appendonly.aof.bak)。
    • 说明:Redis 重启时若 AOF 开启,会优先以 AOF 恢复,从而可能忽略本次的 RDB 数据。
  4. 启动并校验
    • systemctl start redis
    • 登录验证:redis-cli ping;keys *(或业务侧抽样校验)。

四 自动化与注意事项

0
看了该问题的人还看了