zoukankan      html  css  js  c++  java
  • REdis学习-14 Redis持久化之RDB(Redis DataBase)

    面试和工作,持久化都是重点!

    Redis是内存数据库,如果不讲内存中的数据状态保存到磁盘中,那么一旦服务器进程退出,服务器中的数据库状态也会消失。所以redis提供了持久化的功能!

    在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话将的快照,它恢复时是将快照文件直接读到内存中。

     Redis会单独创建一个子进程来进行持久化,会先将数据写入到一个临时文件中,持久化过程都结束了,在用这个临时文件替换上次持久化好的文件。

    整个过程,主进程是不进行任何io操作的。

    这就保证了极高的性能。

    如果需要进行大规模数据的恢复

    且对哟数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加高效。

    rdb的缺点是最后一次持久化后的数据可能丢失。

    我们默认的持久化方式是RDB,一般情况下不需要修改这个配置!

    RDB 保存的文件时 dump.rdb

    触发机制

    1、save的规则满足的情况下,会自动触发rdb规则

    2、执行flushall命令,也会触发我们的rdb

    3、退出redis,也会产生rdb文件。

    如何恢复rdb文件

    1、只需要讲rdb文件放在我们的redis启动目录就可以,redis启动的时候会自动检查dump.rdb恢复其中的数据

    2、查看需要存放的位置

     优点:

    1、适合大规模的数据恢复!dump.rdb

    2、对数据的完整性要求不高

    缺点:

    1、需要一定的时间间隔进行操作,如果redis意外宕机了,这个最后一次修改的数据就没有了

    2、fork进程的时候,会占用一定的内存空间

  • 相关阅读:
    java_oop_方法2
    POJ 3276 Face The Right Way(反转)
    POJ 3276 Face The Right Way(反转)
    POJ 2566 Bound Found(尺取法,前缀和)
    POJ 2566 Bound Found(尺取法,前缀和)
    POJ 3320 Jessica's Reading Problem(尺取法)
    POJ 3320 Jessica's Reading Problem(尺取法)
    POJ 3061 Subsequence(尺取法)
    POJ 3061 Subsequence(尺取法)
    HDU 1222 Wolf and Rabbit(欧几里得)
  • 原文地址:https://www.cnblogs.com/gslgb/p/13493632.html
Copyright © 2011-2022 走看看