(转载)https://blog.csdn.net/sunroyfcb/article/details/81229960
redis中内部提供了良好的持久化的策略,保证内存中的数据不丢失,这样redis服务器重启后,依然可以获取其中的数据。分别采用了2中形式进行数据持久化操作:RDB模式和AOF模式。大量数据的持久化必然涉及到内存的整理,在另一篇文章中有介绍https://blog.csdn.net/sunroyfcb/article/details/81212588。
RDB模式是redis中默认的持久化策略,它是是定期持久化,可能会导致数据的丢失。如果允许数据有少量的丢失可以使用RDB模式.因为其效率高。
持久化命令:1.主动持久化save,执行save命令,会将全部的进程先挂起,直到save命令执行完成后,后续的进程才能执行,也就是会造成线程阻塞;2.后台持久化bgsave,不会马上数据备份,不会造成线程阻塞。
在redis.conf文件中的持久化配置:
持久化文件的配置:
持久化文件夹的配置,保存配置文件:
采用AOF持久化的配置后,可以实现实时数据备份,如果对数据的安全性要求较高,则使用AOF模式,但是AOF的模式性能较低。
开启AOF配置开关,将no改为yes即可,下面是对应持久化文件:
定义持久化策略,默认每秒备份一次,性能较RDB略低,若采用always模式,则实时备份,效率最低:
定义文件的位置:
总结:在redis中启动时,先扫描持久化文件,将数据恢复到内存中。之后根据持久化的规则,再次进行持久化。默认的条件下采用RDB模式进行数据备份,效率是最高的。如果开启了AOF模式则使用AOF持久化方式,这时RDB模式将不生效。
————————————————
版权声明:本文为CSDN博主「sunroyfcb」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sunroyfcb/article/details/81229960