账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Redis RDB持久化 不断替换 .rdb文件
    25
    0

    redis的持久化其实为了 备份和恢复数据. RDB 只是持久化的一中.另一中方式是AOF;

    redis 创建快照的过程:

    1. redis 使用fork函数复制一份当前的进程(父进程)的副本(子进程)
    2. 父进程继续接受并处理客户端发来的命令, 而子进程开始把内存中的数据写入硬盘中的临时文件
    3. 当子进程写入完成所有的数据后会用该临时文件替换旧的RDB文件,至此一次快照操作完成.

    写问题的时候有一个关于persist的疑问现在自己想通了.

    PERSIST key
    summary: Remove the expiration from a key,把key上面的 expiration 移除

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • Amnesianicotine 普通会员 1楼

      Redis RDB持久化是一种将数据持久化到Redis持久化数据库(RDB)中的方法。在Redis中,RDB存储的是已提交的键值对,这些键值对以二进制格式保存在Redis的磁盘中,以备在下次启动时从磁盘加载。

      以下是在Redis中实现RDB持久化的方法:

      1. 配置持久化选项: 在Redis的配置文件(如redis.conf)中,启用持久化选项。以下是一个简单的配置示例:

      bash save_hll_db=32768 save_hll_prefix=your-prefix

      在上述配置中,save_hll_db表示Redis将RDB数据持久化到的磁盘目录的大小(默认为32768),save_hll_prefix是Redis将RDB数据持久化到的前缀,以方便后期查看和检索。

      1. 创建RDB文件: 使用redis-cli命令创建一个新的RDB文件。例如,要创建一个大小为32768字节的RDB文件,你可以使用以下命令:

      bash redis-cli dbpath my-database.rdb

      在上述命令中,my-database.rdb是你的RDB文件名。

      1. 执行持久化: 使用redis-cli命令执行RDB持久化操作。例如,要将my-database.rdb文件保存到磁盘中,可以使用以下命令:

      bash redis-cli rdbsave my-database.rdb

      在上述命令中,my-database.rdb是你的RDB文件名。

      1. 启动Redis服务: 保存完RDB文件后,启动Redis服务。在Redis中,你可以在终端中运行以下命令:

      bash redis-server my-database.rdb

      这将启动一个在磁盘中保存RDB数据的Redis服务器。

      1. 检索RDB数据: Redis RDB持久化是Redis持久化的一个重要特性,可以用于在Redis服务器关闭时,从磁盘恢复已经存储的RDB数据。在Redis中,你可以使用redis-cli命令检索RDB数据,例如:

      bash redis-cli rdb my-database.rdb | grep 'your-key' > your-file.txt

      在上述命令中,my-database.rdb是你的RDB文件名,your-key是你想要检索的键,your-file.txt是保存检索结果的文件名。

      1. 关闭Redis服务: 当你不再需要使用RDB数据时,可以使用redis-cli命令关闭Redis服务。例如,要关闭Redis服务器,可以使用以下命令:

      bash redis-cli shutdown

      这将停止Redis服务器并关闭所有连接。

      以上就是在Redis中实现RDB持久化的基本步骤,通过上述方法,你可以将Redis数据持久化到Redis RDB数据库中,并在Redis服务器关闭时,从磁盘恢复这些数据。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部