redis总结(五)--持久化之RDB

本文内容来自尚硅谷任务18:Redis_持久化之RDBhttp://www.gulixueyuan.com/course/44/task/1139/show

1配置conf文件

选择其中一条配置即可

save “ ”  :表示禁用rdb方式来保存数据

save 900 1 :表示900内如果变化大于等于1次,则到了900秒时会通过rdb方式保存数据

save 300 5 :表示300内如果变化大于等5次,则到了300秒时会通过rdb方式保存数据

save 60 10000 :表示60内如果变化大于等10000次,则到了60秒时会通过rdb方式保存数据

2原理

Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到
一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。
整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能


如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方
式要比AOF方式更加的高效。RDB的缺点是最后一次持久化后的数据可能丢失。

3配置完成后重启数据库

  3.1关闭数据库:执行shutdown命令,可以在在bin目录中在连接了数据得情况下执行shutdown操作可关闭数据库。

  3.2删除原来得rdb文件:在bin目录下找到默认的dump.rdb文件,进行删除

  3.3查看redis数据库是否是启动状态的三种方式

         3.3.1  在bin目录中执行  ps -ef|grep redis

          3.3.2 在bin目录中执行  lsof -i :6379 (没有查询出信息,表示没有数据库启动)

  3.4启动数据库

        redis-server  /myredis/redis.conf

4配置文件说明

dbfilename dump.rdb:配置文件中这句话意思是,数据库rdb方式备份的数据保存在名为dump.rdb文件中的

5立即执行rdf方式的redis语句

flushall:清除数据库所有内容的时候会立即持久一次数据

shutdown:关闭数据库的时候会立即持久化一次数据

save:立即备份数据,只管保存,其它不管,全部阻塞

bgsave:Redis会在后台异步进行快照操作,快照同时还可以响应客户端请求。可以通过lastsave,命令获取最后一次成功执行快照的时间

快照:将内存中的数据保存到数据(个人理解)

6优缺点

优缺点和对比aof方式的优缺点进行对比

rdb最大的缺点就是最后一次的数据可能会丢失

     6.1优点

          适合大规模的数据恢复

          对数据完整性和一致性要求不高

     6.2缺点

          在一定间隔时间做一次备份,所以如果redis意外down掉的话,就会丢失最后一次快照后的所有修改

          Fork的时候,内存中的数据被克隆了一份,大致2倍的膨胀性需要考虑

7补充

    7.1动态所有停止RDB保存规则的方法:redis-cli config set save ""  

    7.2获取最后一次快照的时间:last save命令

猜你喜欢

转载自blog.csdn.net/lsx2017/article/details/84702976