debian

Redis数据恢复在Debian上怎么做

小樊
39
2025-08-30 10:39:51
栏目: 云计算

在Debian上恢复Redis数据,需根据持久化类型(RDB或AOF)选择方法,具体步骤如下:

一、RDB文件恢复

  1. 停止Redis服务

    sudo systemctl stop redis
    
  2. 备份当前数据文件

    sudo cp /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.bak
    
  3. 替换为备份的RDB文件
    将有效的RDB文件(如dump.rdb.bak)复制到Redis数据目录(默认/var/lib/redis/),并确保权限正确:

    sudo cp /path/to/backup/dump.rdb /var/lib/redis/
    sudo chown redis:redis /var/lib/redis/dump.rdb
    
  4. 启动Redis服务

    sudo systemctl start redis
    

二、AOF文件恢复

情况1:AOF文件未损坏

  1. 停止Redis服务

    sudo systemctl stop redis
    
  2. 备份当前AOF文件

    sudo cp /var/lib/redis/appendonly.aof /var/lib/redis/appendonly.aof.bak
    
  3. 替换为备份的AOF文件
    将有效的AOF文件复制到数据目录,确保权限正确:

    sudo cp /path/to/backup/appendonly.aof /var/lib/redis/
    sudo chown redis:redis /var/lib/redis/appendonly.aof
    
  4. 启动Redis服务

    sudo systemctl start redis
    

情况2:AOF文件损坏

  1. 备份损坏的AOF文件

    sudo cp /var/lib/redis/appendonly.aof /var/lib/redis/appendonly.aof.bak
    
  2. 使用工具修复AOF文件

    sudo redis-check-aof --fix /var/lib/redis/appendonly.aof
    
  3. 重启Redis服务

    sudo systemctl start redis
    
    • 若修复失败,可尝试从RDB文件重建AOF(需确保RDB持久化已启用):
      sudo mv /var/lib/redis/appendonly.aof /var/lib/redis/appendonly.aof.damaged
      sudo redis-server /etc/redis/redis.conf  # 会自动根据RDB重建AOF
      

三、注意事项

参考来源:

0
看了该问题的人还看了