redis 备份方式

  1. rdb(快照恢复)
    redis默认开启的是rdb备份方式
    1.1 手动备份
    (1) save(会阻塞redis)
    该命令会阻塞当前Redis服务器,执行save命令期间,Redis不能处理其他命令,直到RDB过程完成为止。显然该命令对于内存比较大的实例会造成长时间阻塞,这是致命的缺陷
    (2) bgsave(异步备份) 可以进行手动备份
    执行该命令时,Redis会在后台异步进行快照操作,快照同时还可以响应客户端请求。具体操作是Redis进程执行fork操作创建子进程,RDB持久化过程由子进程负责,完成后自动结束。阻塞只发生在fork阶段,一般时间很短,基本上 Redis 内部所有的RDB操作都是采用 bgsave 命令。
    1.2 rdb默认的自动备份规则
// 3600秒内有一次 更新操作,就进行rdb备份
save 3600 1
// 300秒内有100次操作,就进行rdb备份
save 300 100
// 60秒内有10000次操作,就进行rdb备份
save 60 10000

rdb其他配置

// 备份时,是否压缩文件
rdbcompression yes
// 后台备份出错时,禁止redis写入新数据
stop-writes-on-bgsave-error yes
// 默认值是yes。在存储快照后,我们还可以让redis使用CRC64算法来进行数据校验,但是这样做会增加大约10%的性能消耗,如果希望获取到最大的性能提升,可以关闭此功能。
rdbchecksum yes
// rdb备份文件名称
dbfilename dump.rdb
// 备份文件路径
dir ./

ps:执行执行 flushall 命令,也会产生dump.rdb文件,但里面是空的.

  1. aof(只追加文件append-only file)

你可能感兴趣的:(redis 备份方式)