《Redis设计与实现》- RDB持久化

Redis RDB持久化功能可以将Redis内存中的数据库状态保存到磁盘里面,避免数据意外丢失。

1. 手动生成 RDB 文件

有两个Redis命令可以用于生成RDB文件:

  • SAVE,该命令会阻塞Redis服务器进程,直到RDB文件创建完成为止,在此期间,服务器不能处理任何客户端命令请求
  • BGSAVE,BGSAVE命令会派生出一个子进程,然后由子进程负责创建RDB文件,服务器进程(父进程)继续处理命令请求

2. 自动间隔性生成 RDB 文件

用户可以在redis配置文件中通过 save 选项设置多个保存条件,但只要其中任意一个条件满足,服务器就会执行 BGSAVE 命令。

下面通过实例来解释下save选项的用法:

    # redis.conf 文件中有如下配置    
    save 900 1            # 服务器在 900 秒内,对数据库进行了至少1次修改
    save 300 10          # 服务器在 300 秒内,对数据库进行了至少10次修改
    save 60 10000      # 服务器在 60 秒内,对数据库进行了至少10000次修改
    

如果满足上述配置条件中的任意一个,redis服务器就会自动执行 BGSAVE 命令来进行RDB持久化。

posted @ 2018-08-09 13:36  lanqiu5ge  阅读(220)  评论(0编辑  收藏  举报