首页 > 数据库 >Redis的数据持久化

Redis的数据持久化

时间:2022-12-20 13:22:05浏览次数:39  
标签:AOF 持久 文件 Redis RDB 服务器 数据

介绍 Redis 的数据持久化方案

Redis 的数据持久化主要有两大机制,AOF 日志和 RDB 快照。

  • AOF 持久化是通过保存 Redis 服务器所执行的写命令来记录数据库状态。
  • RDB 持久化是通过保存数据库中的键值对来记录数据库状态。

根据服务器是否启用了 AOF 持久化功能, 服务器载入数据时所使用的目标文件会有所不同:

  • 如果服务器启用了 AOF 持久化功能, 那么服务器使用 AOF 文件来还原数据库状态。
  • 如果服务器没有启用 AOF 持久化功能,那么服务器使用 RDB 文件来还原数据库状态。

AOF 和 RDB 的优劣局限

AOF 日志相比 RDB 快照的优势:

  • AOF 对系统的性能影响更小:AOF 只是追加日志文件,而 RDB 是对所以键值对的快照,因此一次 AOF 操作比 RDB 对系统的性能影响更小,速度比 RDB 要快,消耗的内存较少。

AOF 日志相比 RDB 快照的劣势:

  • AOF 载入文件的速度更慢:AOF 保存写命令,而 RDB 保存保存键值对来记录数据库状态,因此载入 AOF 文件的速度比载入 RDB 文件的速度更慢。
  • AOF 文件的体积更大:保存相同的数据库状态,AOF 文件比 RDB 文件的体积更大。

AOF 和 RDB 混合持久化

在 Redis4.0 后支持混合持久化方式,如果使用混合持久化:

  • 当服务器执行写命令后,Redis 会以 AOF 持久化方式将命令写回 incr.aof 文件。
  • 当进行 AOF 文件重写时,Redis 会以 RDB 持久化方式将当前数据库状态保存到名为 base.aof 文件,然后再将 AOF 重写缓冲区中的所有内容写入 incr.aof 文件。
  • 当 Redis 服务器重启后,将载入 base.aof 和 incre.aof 文件以还原数据库状态。

标签:AOF,持久,文件,Redis,RDB,服务器,数据
From: https://www.cnblogs.com/feiyu2/p/16993980.html

相关文章

  • 在.Net6 上 使用 Core Frist EF 进行数据迁移
    1.首先引用两个包,不过需要版本相同Microsoft.EntityFrameworkCore.SqlServerMicrosoft.EntityFrameworkCore.Tools  2.表实体定义usingSystem.ComponentModel.......
  • 面试官:MySQL一千万数据,怎么快速查询?
    前言面试官:来说说,一千万的数据,你是怎么查询的?me:直接分页查询,使用limit分页。面试官:有实操过吗?me:肯定有呀此刻献上一首《凉凉》也许有些人没遇过上千万数据量的表,也不清楚查......
  • easypoi 4.2.0 大数据导出
      excel导出大数据pom文件<dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><ver......
  • .Net 6 使用Code Frist EF简单数据迁移
    1.定义 EFCodeFirst上下文StuContext类和一个类作为模型 映射字段 usingSystem.Data.Entity;usingSystem.Collections.Generic;usingSy......
  • 生产环境 Redis 优化记录
    1.现状描述1.1.生产环境生产环境配置6套Redis服务。1、配置为3节点物理服务器的Redis缓存群集,通过控制应用的主、备处于不同的物理服务器实现Redis访问的高可用,按不同......
  • 达梦数据库修改最大连接数
    达梦数据库安装默认连接数为100,实际开发中能不够用,如下是修改最大连接数的方法1、查看最大连接数:selectSF_GET_PARA_VALUE(2,'MAX_SESSIONS');#结果100 2、修改最......
  • 性能监控平台搭建 -- 集成Locust性能数据
    ​文章目录​​问题概述​​​​获取Locust性能数据接口​​​​定时采集性能数据​​​​性能数据采集一致性​​​​no-web模式下获取性能数据​​​​slave模式下不进行......
  • 数据库性能优化小结
    近期部门有大牛分享了下数据库的相关知识,自己这里趁热也总结一下对应测试来说比较容易涉及到的性能优化方面的知识。数据库的性能从宏观上可以分为:查询、插入;这里小结了下影......
  • nodejs 拦截接口数据
     importpuppeteerfrom'puppeteer'constbrowser=awaitpuppeteer.launch({headless:false})constpage=awaitbrowser.newPage()awaitpage.setDe......
  • 使用 expdp导入导出oracle 数据库
    expdp用户名/密码@afspdbTABLES=table1dumpfile=/yfq/expdp_a11.dmp(1)执行之后报错了;expdp TNScouldnotresolvetheconnectidentifierspecified查了下是......