因为redis是内存数据库,它将自己的数据库状态储存在内存里面,如果服务器进程退出,服务器的数据库状态就会消失不见。为了解决这个问题,redis提供了rdb持久化,这个功能就是将redis在内存的数据库状态存到磁盘里。
redis有两个命令用于创建RDB文件,分别是SAVE 和 BGSAVE.
SAVE命令会阻塞当前服务器进程,知道RDB文件创建完成为止,期间redis服务器不接受任何其他命令;
BGSAVE命令不会阻塞当前服务器进程,而是通过fork一个子进程,由这个子进程来创建RDB文件,服务器进程继续执行命令。
RDB文件载入并没有命令去执行,它是在每次服务器启动的时候,只要检测到RDB文件的存在,就会去载入。
需要注意的是,如果服务器开启了AOF持久化,优先用AOF文件来加载,如下图所示:
原文:https://www.cnblogs.com/juin1058/p/11593176.html