数据库状态:redis服务器中的非空数据库以及他们的键值对数据称为数据库状态。
Redis持久化:将Redis在内存中的数据库状态保存到磁盘里面,避免数据意外丢失。
RDB文件:
RDB文件用于保存和还原Redis服务器所有数据库中的所有键值对数据。
RDB文件的创建与载入:
1、有两个redis命令可以用于生成RDB文件,一个是save,另一个是bgsave。
(1)SAVE命令会阻塞redis服务进程,直到RDB文件创建完毕为止,在服务器进程阻塞期间,服务器不能处理任何命令。
(2)bgsave命令会fork一个子进程,然后由子进程负责创建RDB文件,服务器主进程继续处理命令请求。
2、服务器在载入RDB文件期间,会一直处于阻塞状态,直到载入工作完成为止。
RDB文件自动间隔性保存:
Redis允许用户通过服务器配置save选项,让服务器每隔一段时间自动执行一次bgsave。
用户可以通过save选项配置多个保存条件,只要其中任意一个条件被满足,服务器就会执行bgsave命令。
例如:
save 900 1
save 300 10
save 60 10000
当Redis服务器启动时,用户可以通过指定配置文件或传入启动参数的方式设置save选项。