首页 > 数据库 >redis持久化

redis持久化

时间:2023-05-28 14:44:50浏览次数:48  
标签:AOF 持久 触发 -- redis 3172859 RDB

一、Redis持久化,两种方案

RDB ---> 存的是数据,恢复数据直接加载数据到内存中 ,速度快,丢失数据风险大

redis database backup file (redis数据备份文件),即在关闭redis时,执行save命令,把所有数据都记录到磁盘中,保存。

  • 执行时机 :
    -- 1.手动执行
    -- 2.正常关机 用save命令
    -- 3.自动触发(规定时间超过多少次触发),见下图1.1 ,用bgsave命令

RDB中bgsave的基本流程 -----> (save可能会有阻塞,不做解释)

  1. 创建子进程共享内存空间
  2. 子进程读取数据写入新的RDB文件
  3. 覆盖旧的RDB文件


AOF ---> 存的是指令,恢复数据重新加载指令 , 回复慢,丢失数据风险小

append only file (追加文件)

  • 含义: redis每次的写操作的写命令都会记录在AOF文件中

  • 何时写入AOF,写入频率?

  • AOF重复记录对同一个key的写操作问题
    -- 使用bgrewriteaof命令,记录同一个key的最后一次写操作
    -- 自动触发,见下图

点击查看代码
 配置第一次触发时的条件![](/i/l/?n=23&i=blog/3172859/202305/3172859-20230528112505670-727118779.png)

 若是文件增长了,例如百分之百,就再次触发重写![](/i/l/?n=23&i=blog/3172859/202305/3172859-20230528112514973-925032558.png)



标签:AOF,持久,触发,--,redis,3172859,RDB
From: https://www.cnblogs.com/psuitj/p/RedisPersistence.html

相关文章

  • 使用Linux安装Redis步骤
    在Linux上安装Redis的步骤:打开终端并使用以下命令下载Redistarball:wgethttp://download.redis.io/releases/redis-6.2.4.tar.gz解压缩tarball:tarxzfredis-6.2.4.tar.gz进入Redis目录:cdredis-6.2.4编译Redis:make安装Redis:sudomakeinstall创建Redis配置文件目录:su......
  • 记一次redis数据库RDB内存事故排查处理
    事故表现:redis状态正常,但客户端不能使用,定位日志结论,redis内存申请不通过,导致中断用户操作解决办法1.解锁相关配置(不能解决根本问题,根本原因来源于开发使用姿势不对)两种解决办法一.打开系统层始终同意分配内存(不建议)编辑文件/etc/sysctl.conf添加vm.overcommit_memory=1内核参......
  • redis简单介绍
    Redis知识点&面试题总结来自githubRedis基础简单介绍一下Redis!简单来说Redis就是一个使用C语言开发的数据库,不过与传统数据库不同的是Redis的数据是存在内存中的,也就是它是内存数据库,所以读写速度非常快,因此Redis被广泛应用于缓存方向。另外,Redis除了做缓存之......
  • 如何通过Python将JSON格式文件导入redis?
    摘要:如果希望将JSON文件导入到Redis中,首先要做的就是连接到redis服务。本文分享自华为云社区《Python将JSON格式文件导入redis,多种方法》,作者:梦想橡皮擦。在导入前需要先确定你已经安装Redis,并且可以启动相关服务。windows上启动redis的命令是redis-server.exer......
  • redis
    常用类型list  有序使用:队列列表类型可以使用rpush实现先进先出的功能,同时又可以使用lpop轻松的弹出(查询并删除)第一个元素,所以列表类型可以用来实现消息队列基于rpush+blpophash使用:Hash类型大家应该都不陌生,他就是一个键值对集合,Hash相当于一个string类型的key和......
  • Java 进阶 - SpringJPA 持久层框架
    参考资料https://spring.io/projects/spring-data-jpa介绍SpringDataJPA是Spring基于ORM(ObjectRelationalMapping)框架、JPA规范的基础上封装的一套JPA应用框架,底层使用了Hibernate的JPA技术实现,可使开发者用极简的代码即可实现对数据的访问和操作。它提供了......
  • Linux 安装 Redis
    一、概要1.环境(1)Redis6.2.7,点击可检查最新版本;(2)RockyLinux9.1二、安装与配置1.安装Redis的安装非常简单,官方针对Ubuntu/Debian系统提供了具体指引,对于其他Linux系统也可以通过Snapcraft进行安装。对于RHEL9系统,dnf库也内置了Redis,不过该Redis是6.2.7并非最新的......
  • Redis
    Redis简介概念Redis(REmoteDictionaryServer)是一个内存中的数据结构存储系统,它可以用作数据库,缓存和消息中间件。是用C语言开发的一个开源的高性能键值对数据库,是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求。(非关系型的、分布式的、开......
  • 安装LoadRunner时提示“此计算机上缺少 vc2005_sp1_with_atl_fix_redist”的解决方法
    我的电脑在安装UFT时,被要求需要卸载本机上安装的LoadRunner11,当LoadRunner11被卸载后,进行重新安装LoadRunner11时,会报缺少vc2005_sp1_with_atl_fix_redist错误,类似下图所示:由提示信息可知,这里是由于本机缺少该组件所致,解决方案就是安装此组件,可以去网上下载,当然,我们完全没有必......
  • 批量删除rediskey(使用scan模式)
    importredisimportre#连接Redisr=redis.Redis(host='192.168.1.42',port=31448,db=0,password='Y11111')#需要删除的key的正则表达式pattern='data-*'#定义SCAN命令的游标初始值cursor=0#循环遍历Redis中符合正则表达式的key,并逐个删除while......