学习的路上,永不停止

生命不止,学习不止

redis持久化RDB

1)RDB:在指定的时间间隔内将内存中的数据集快照写入磁盘,Snapshot快照,它恢复时将快照文件直接读到内存

    redis会单独创建(fork)一个子进程来持久化,会先将数据写入到一个临时文件中,带持久化过程结束了,再用这个临时文件替换上次持久化好的问及那。

   如果需要对大规模数据的恢复,且对于数据恢复的完整性不是很敏感,那rdb方式比aof方式更加高效。rdb的缺点是最后一次数据可能丢失

  fork:作用是复制一个与当前进程一样的进程。新进程的所有数据(变量)作为原来的子进程

  rdb保存的是dump.rdb文件

配置文件在:save seconds change  保存快照时间设置

 查看redis进程是否启动:ps -ef|grep redis

                                         lsof -i 6379

                                        netstat 

rdb备份: 1分钟改1万次

                5分改10次

                 15分钟改1次

禁用: 无配置或save “”

      

stop-writes-on-bgsave-error:在后台出错的情况下停止写入

rdbcompression 对于存储到磁盘中的快照,可以设置是否进行压缩

rdbchecksum:在存储快照后,还可以让redis使用CRC64算法进行数据校验,但是这样做会增加大约10%的性能消耗

2)如何触发rdb快照

save命令:save只管保存,其它不管

bdsave:redis后台异步进行

flushall:无意义

3)如何恢复文件:将备份文件dump.rdb放到目录下

4)优势:适合大规模的数据恢复  对数据完整性和一致性要求不高

5)劣势:如果意外down掉,丢失最后一次

      fork需要考虑内存空间



     

 

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/smj20170417/article/details/78538402
文章标签: redis
个人分类: redis
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭