Redis7持久化

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Redis7持久化

一、redis持久化

image.png

1、RDB

RDB持久性以指定的时间间隔执行数据集的时间点快照

也就是说在一定的时间间隔内,将某一时刻的数据和状态以文件的形式写到磁盘上,这个快照文件交dump.rdb

Redis6更新策略

image.png

image.png

RDB手动触发

image.png

5秒2次修改

image.png

image.png

image.png

RDB手动触发

save:优先级高,执行该命令时其他进程都会停下来等这个命令执行完,因此在此期间redis对外缓存功能失效,很少用
bgsave:在执行该命令的时候,redis产生一个fork,相当于复制了一个父进程,由此来异步保存RDB

lastsave   //查看上一次保存的时间戳,在linux下查看日期

image.png

image.png

优缺点

image.png

RDB修复命令

image.png

哪些操作会触发RDB快照

配置文件中默认的快照配置

手动 save/bgsave 命令

执行flush / flushdb 命令也会产生 dump.rdb 文件,但里面是空的,无意义

执行 shutdown 且没有设置开启 AOF 持久化

主从复制时,主节点自动触发

如何禁用快照

动态所有停止 RDB 保存规则的方法: redis-cli config set save “”

快照禁用

image.png

RDB优化参数

image.png

image.png

image.png

image.png

image.png

2、AOF

只记录写操作

image.png

image.png

AOF 持久化工作流程

image.png

AOF 缓冲区三种写回策略

always 同步写回,每个写命令执行完立刻同步地将日志写回磁盘

everysec (默认)每秒写回,每个写命令执行完,只是先把日志写到AOF缓冲区,每隔1s把缓存区地数据写入磁盘

no操作系统控制写回,只是将日志先写到AOF文件的内存缓冲区,由操作系统决定何时将缓冲区内容写回磁盘

image.png

AOF功能配置

image.png

image.pngimage.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

结果:当AOF文件破损后,redis启动都1启动不了

image.png

AOF文件异常修复

//命令:
redis-check-aof --fix appendonly.aof.1.incr.aof

image.png

AOF的优缺点

image.png

AOF重写机制

image.png

自动配置

  • 满足配置文件中的选项后,Redis会记录上次重写时地AOF大小
  • 默认配置是当AOF文件大小是上次rewrite后大小的一倍且文件大于64M时
  • image.png
  • image.png
  • 手动配置
  • 客户端向服务器发送 bgrewriteaof 命令
  • image.png
  • image.png
  • image.png

3、RDB+AOF混合

AOF默认是关闭的,当两者共存时,AOF的优先级高

image.png

同时开启两种持久化方式


当redis 重启时候会优先载入AOF文件来恢复原始的数据,因为在通常情况下AOF文件保存的数据集要比RDB文件保存的数据集要完整

RDB的数据不实时,同时使用两者时服务器重启也只会找AOF文件。

那要不要只使用AOF呢

安特雷兹建议不要

因为RDB更适合用于备份数据库(AOF不断变化不好备份),留着AOF作为一个万一的手段

image.png

4、纯缓存模式

同时关闭RDB + AOF


save “”

禁用rdb

禁用db持久化模式下,我们仍然可以使用命令save、bgsave生成rdb文件

appendonly no

禁用aof

禁用aof持久化模式下,我们仍然可以使用命令 bgrewriteaof生成aof文件


相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
4天前
|
监控 NoSQL 测试技术
【赵渝强老师】Redis的AOF数据持久化
Redis 是内存数据库,提供数据持久化功能,支持 RDB 和 AOF 两种方式。AOF 以日志形式记录每个写操作,支持定期重写以压缩文件。默认情况下,AOF 功能关闭,需在 `redis.conf` 中启用。通过 `info` 命令可监控 AOF 状态。AOF 重写功能可有效控制文件大小,避免性能下降。
|
4天前
|
存储 监控 NoSQL
【赵渝强老师】Redis的RDB数据持久化
Redis 是内存数据库,提供数据持久化功能以防止服务器进程退出导致数据丢失。Redis 支持 RDB 和 AOF 两种持久化方式,其中 RDB 是默认的持久化方式。RDB 通过在指定时间间隔内将内存中的数据快照写入磁盘,确保数据的安全性和恢复能力。RDB 持久化机制包括创建子进程、将数据写入临时文件并替换旧文件等步骤。优点包括适合大规模数据恢复和低数据完整性要求的场景,但也有数据完整性和一致性较低及备份时占用内存的缺点。
|
1月前
|
存储 缓存 NoSQL
大数据-45 Redis 持久化概念 RDB AOF机制 持久化原因和对比
大数据-45 Redis 持久化概念 RDB AOF机制 持久化原因和对比
35 2
大数据-45 Redis 持久化概念 RDB AOF机制 持久化原因和对比
|
1月前
|
消息中间件 分布式计算 NoSQL
大数据-41 Redis 类型集合(2) bitmap位操作 geohash空间计算 stream持久化消息队列 Z阶曲线 Base32编码
大数据-41 Redis 类型集合(2) bitmap位操作 geohash空间计算 stream持久化消息队列 Z阶曲线 Base32编码
25 2
|
1月前
|
存储 缓存 NoSQL
大数据-46 Redis 持久化 RDB AOF 配置参数 混合模式 具体原理 触发方式 优点与缺点
大数据-46 Redis 持久化 RDB AOF 配置参数 混合模式 具体原理 触发方式 优点与缺点
56 1
|
2月前
|
存储 NoSQL Redis
SpringCloud基础7——Redis分布式缓存,RDB,AOF持久化+主从+哨兵+分片集群
Redis持久化、RDB和AOF方案、Redis主从集群、哨兵、分片集群、散列插槽、自动手动故障转移
SpringCloud基础7——Redis分布式缓存,RDB,AOF持久化+主从+哨兵+分片集群
|
2月前
|
存储 缓存 NoSQL
Redis 大 Key 对持久化的影响及解决方案
Redis 大 Key 对持久化的影响及解决方案
43 1
|
2月前
|
存储 NoSQL 安全
8)详解 Redis 的配置文件以及数据持久化
8)详解 Redis 的配置文件以及数据持久化
37 0
|
2月前
|
存储 缓存 NoSQL
深入探究Redis的AOF持久化:保障数据安全与恢复性能的关键机制
深入探究Redis的AOF持久化:保障数据安全与恢复性能的关键机制
87 0