Redis持久化机制-RDB
2020-08-18 本文已影响0人
蓝色Hippie
一、什么是RDB(redis database)
RDB:每隔一段时间,把内存中的数据写入临时文件,作为快照。恢复的时候把快照文件读进内存,如果宕机重启,那么内存里的数据肯定会没有,再次重启redis后,则会恢复。
RDB适合大量数据的恢复,但是数据的完整性和一致性可能会不足。
二、备份与恢复
内存备份-->磁盘临时文件
临时文件--》恢复到内存
三、RDB优劣势
优势
1.每隔一段时间备份,全量备份
2.灾备简单,可以远程传输
3.子进程备份的时候,主进程不会有任何io操作,包装数据的完整性
4.相对于AOF,当有更大文件的时候可以快速重启恢复
劣势:
1.发送故障时,有可能会丢失最后一次备份的数据
2.子进程所占用的内存会和父进程一模一样,如会造成cpu负担
3.由于定时全量备份时重量级操作,所以对于实时备份,就无法处理了
四、RDB配置
1.保存的位置,可以在redis.conf定义: /usr/local/redis/working/dump.rdb
2.保存机制

3.stop-writers-on-bsave-error:
yes(如果save出错,则停止写操作)
no(可能造成数据不一样)
4.rdbcompression
yes:开启rdb压缩模式
no:关闭,会节约cpu损耗,但是文件会大
5.rdbchecksum
yes:使用CRC64算法校验数据,有10%损耗
no:不校验