• 恢复Redis被误删的数据


    结论:要恢复删除的key,前提是需要开启aof持久化策略;在开启aof持久化策略的情况下,删不删除rdb文件没有关系。
    因为:redis恢复机制,即在开启aof并且存在文件的情况下,优先从aof文件中恢复

    1. 如果只配置 AOF ,重启时加载 AOF 文件恢复数据;
    2. 如果同时配置了 RDB 和 AOF ,启动是只加载 AOF 文件恢复数据;
    3. 如果只配置 RDB,启动是将加载 dump 文件恢复数据。

    附:
    在这里插入图片描述

    https://www.alibabacloud.com/help/zh/apsaradb-for-redis/latest/backup-and-restoration-solutions?spm=a2c63.p38356.0.0.2ae942d6CYKMPH#section-nr6-ei4-yiu

    1.开启aof和rdb持久化策略
     appendonly yes
     appendfilename "appendonly.aof"
    
     // rdb默认开启,可以配置调整参数
     save 900 1
     save 300 10
     save 60 10000
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    连接redis后,造些测试数据:

    set james_test 123
    
    • 1

    通过save命令产生redis rdb备份文件,通过config set appendonly yes会产生aof文件;

    打开rdb文件查看内容:
    在这里插入图片描述

    打开aof文件查看内容:
    在这里插入图片描述
    删除刚才创建的key:

    del james_test
    
    • 1

    此时我们再看aof文件中多了些东西:
    在这里插入图片描述
    最后5行解析:

    *2   // 代表del james_test总共分为两部分
    $3  // $3代表接下来是个字符串,长度为3
    del // 字符串del,长度为3
    $10  //   $1代表接下来是个字符串,长度为10
    james_test    // 字符串james_test,长度为10
    
    • 1
    • 2
    • 3
    • 4
    • 5

    而rdb文件内容不变:
    在这里插入图片描述
    把aof文件中del以及后面的内容删掉并保存:
    在这里插入图片描述

    然后重启redis,查看刚才的key:
    在这里插入图片描述

  • 相关阅读:
    MIME(Multipurpose Internet Mail Extensions)类型绕过
    EndNote使用技巧之引用文献信息的导入与修改
    【项目管理】beautyeye
    前端笔记01---html 的加载
    2023数维杯国际赛数学建模D题思路模型分析
    【Houdini】如何使用Houdini渲染流体?
    以人物画像谈测试员如何半道介入一个新项目
    ceramic research
    Redis分布式锁
    Ubuntu 系统 快速 安装 Redis
  • 原文地址:https://blog.csdn.net/RookiexiaoMu_a/article/details/126308881