5、持久化

该栏目会系统的介绍 Redis 的知识体系,共分为相关概念、操作指令、主从复制等模块



RDB持久化

1、概述

  • 指定的时间间隔内将内存中的数据集快照写入磁盘,恢复时是将快照文件直接读到内存里

2、优势

  • 适合大规模的数据恢复
  • 对数据完整性和一致性要求不高更适合使用
  • 节省磁盘空间
  • 恢复速度快

3、持久化流程

  • :redis会单独创建(fork)子进程来进行持久化,会先将数据写入到临时文件中,待持久化过程都结束了,再用这个临时文件替换旧文件
    RDB持久化流程

4、相关配置

# 设置文件名称,默认为dump.rdb
dbfilename dump.rdp

# 设置文件位置
dir ./

# 快照规则设置
save 3600 1
save 30 10
save 60 10000

# 当redis无法写入磁盘时,直接关闭redis写操作
stop-writes-on-bgsave-error yes

# 压缩文件
rdbcompression yes

# 检查文件完整性
rdbchecksum yes

AOF持久化

1、概述

  • :以日志的形式来记录每个写操作,只允许追加文件但不可以改写文件

2、优势

  • 备份机制更稳健,丢失数据概率更低
  • 可读的日志文本,通过操作AOF稳健,可以处理误操作

3、持久化流程

  • 客户端的请求写命令会被append追加到AOF缓冲区内
  • AOF缓冲区根据AOF持久化策略[always,everysec,no]将操作sync同步到磁盘的AOF文件中
  • AOF文件大小超过重写策略或手动重写时,会对AOF文件rewrite重写(只关注最后的结果,不关注中间过程 ),压缩AOF文件容量
  • redis服务重启时,会重新load加载AOF文件中的写操作达到数据恢复的目的
    AOF持久化流程

4、相关配置

# 启动AOP
appendonly yes

# AOF文件名称 
appendfilename "appendonly.aof"

# AOP同步频率
appendfsync always | everysec | no  (立刻同步 | 每秒同步 | 不同步)

# 重写策略:大于64mb的100%,即128M才会重写
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值