Redis数据的持久化

Redis的持久化有两种方式:

RDB(Redis Database)和AOF(Append Only File)

目录

一、RDB

保存方式

2、rdb在redis.conf文件中的配置

二、AOF

1、保存方式

2、aof方式持久化在redis.conf文件中的配置

三、持久化建议

四、单机版-redis部署


一、RDB

保存方式

将Redis数据以快照的形式保存到磁盘中

在RDB方式下,Redis提供了save和bgsave两种方式进行数据持久化。

其中save方式是在主进程中执行,会阻塞所有的客户端请求,直到快照保存完成。

bgsave方式则是通过创建子进程进行数据持久化,并不会阻塞客户端请求。

在save和bgsave中,save会在执行完指定时间内的写操作后进行快照保存,而bgsave则是在指定时间内开启一个子进程进行快照保存。

在save和bgsave中,save会在执行完指定时间内的写操作后进行快照保存,而bgsave则是在指定时间内开启一个子进程进行快照保存。

save 900 1
save 300 10
save 60 10000
redis的持久化操作为什么要保存三次

因为在Redis的持久化过程中,如果只进行一次快照保存,可能会因为系统崩溃或者其他原因导致数据丢失。而多次进行快照保存,可以增加数据的保护程度,降低数据丢失的风险。因此,通常会对持久化操作进行多次保存,在上述的示例中,就是在900秒、300秒和60秒后分别进行一次快照保存。

2、rdb在redis.conf文件中的配置

dir /a/b/c

#该名称会在dir目录下生成

dbfilename dump.rdb

rdbcompression yes

#rdbcompression指定是否开启rdb文件的压缩存储,默认为yes,开启压缩存储后可以减小RDB文#件的大小,但会增加cpu的使用量。

二、AOF

1、保存方式

将Redis的每个写操作以追加的方式记录到AOF文件中,这样在redis重启时可以通过重新执行AOF文件中记录的写操作来恢复数据

2、aof方式持久化在redis.conf文件中的配置

dir /a/b/c

#开启AOF持久化方式

appendonly yes

#文件名

appendfilename "appendonly-41.aof"

三、持久化配置-建议

在配置redis.conf时,可以同时配置rdb和aof两种格式的持久化操作吗,有什么推荐?

可以同时配置RDB和AOF两种格式的持久化操作,因为它们各有优缺点,可以根据实际情况选择合适的持久化方式。

RDB持久化方式可以将Redis数据库在指定的时间间隔内生成快照,并将快照保存到硬盘上。快照保存的是Redis数据库在某个时间点的数据,可以保证数据的完整性。但是,如果Redis服务器在快照生成之后崩溃,最后一次快照生成之后的新写入数据将会丢失。

AOF持久化方式可以将Redis数据库中所有的写命令记录在追加文件中,当Redis服务器重启时,可以通过重新执行AOF文件中的所有命令来还原数据。AOF持久化方式可以更好地保证数据的一致性,但是由于需要记录每个写命令,所以AOF文件通常比RDB文件更大,重启时也需要更长的时间来还原数据。

根据业务的需求和实际情况,可以选择RDB、AOF或RDB与AOF的组合持久化方式。如果数据的完整性比较重要,可以使用RDB方式;如果数据的一致性比较重要,可以使用AOF方式;如果既要保证数据的完整性,又要保证数据的一致性,可以使用RDB与AOF的组合方式。一般来说,建议使用AOF持久化方式,因为它更能保证数据的一致性。

四、单机版-redis部署

https://blog.csdn.net/Isonion/article/details/134442807?spm=1001.2014.3001.5501

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/197668.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux输入设备应用编程(键盘,按键,触摸屏,鼠标)

目录 一 输入设备编程介绍 1.1 什么是输入设备呢? 1.2 什么是输入设备的应用编程? 1.3 input子系统 1.4 数据读取流程 1.5 应用程序如何解析数据 1.5.1 按键类事件: 1.5.2 相对位移事件 1.5.3 绝对位移事件 二 读取 struct input_e…

rabbitMQ的扇出模式(fanout发布订阅)的生产者与消费者使用案例

扇出模式 fanout 发布订阅模式 生产者 生产者发送消息到交换机(logs),控制台输入消息作为生产者的消息发送 package com.esint.rabbitmq.work03;import com.esint.rabbitmq.RabbitMQUtils; import com.rabbitmq.client.Channel;import java.util.Scanne…

java--俄罗斯方块

一、先看一下游戏运行时的画面 二、代码部分 1. Cell.java Cell.java: package demo1;import java.awt.image.BufferedImage; import java.util.Objects;/* 编写小方块类属性:行、列、每个小方格的图片方法:左移一格、右移一格、下落一格 编…

kubectl 本地远程链接k8s多个集群,远程管控多集群,查看日志 部署服务(windows版)

文章目录 一、前言二、windows上安装kubectl和mobaxterm2.1 准备安装包2.2 安装kubectl2.3 链接k8s集群2.4 查看某一个pod的容器日志2.5 切换context 上下文配置,实现在多个k8s集群间动态切换 一、前言 现如今是一个万物皆上云 的时代,各种云层出不穷&am…

贝锐蒲公英路由器X4C如何远程访问NAS?

在目前网盘前路坎坷的情况下,私人云盘已然是一种新的趋势!那自己打造一个私有云盘,是否需要高成本或是高门槛呢?其实并不用!蒲公英针对个人玩家打造了全方位的私有云解决方案。 (1)入门级玩家只…

Web之HTML笔记

Web之HTML、CSS、JS Web标准一、HTML(超文本标记语言)HTML 基本结构标签常用标签1.font标签2.p标签3.注释4.h系列标题5.img6.超链接a7.列表8.表格9.表单 Web之CSS笔记 Web之JavaScript(jQuery)笔记 Web标准 结构标准用于对网页元素进行整理和分类(HTML…

Git-概念与架构

GIT-概念与架构 一、背景和起源二、版本控制系统1.版本控制分类1.1 集中式版本控制1.2 分布式版本控制 2.Git和SVN对比2.1 SVN2.2 GIT 三、GIT框架1.工作区(working directory)2.暂存区(staging area)3.本地仓库(local…

在vmware中给linux添加硬盘

1.必须在断开linux电源的情况下,才能添加硬盘成功。注:自己好几次在开机状态下添加硬盘都失败了,然后关机后,又试了下,居然成功了。

鸿蒙APP外包开发需要注意的问题

在进行鸿蒙(HarmonyOS)应用开发时,开发者需要注意一些重要的问题,以确保应用的质量、性能和用户体验。以下是一些鸿蒙APP开发中需要特别关注的问题,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软…

Python学习(一)基础语法

文章目录 1. 入门1.1 解释器的作用1.2 下载1.3 基础语法输入输出语法与引号注释:变量: 数据类型与四则运算数据类型四则运算数据类型的查看type()数据类型的转换int()、int()、float() 流程控制格式化输出循环与遍历逻辑运算符list遍历字典dict遍历 跳出…

Java Web——JavaScript基础

1. 引入方式 JavaScript程序不能独立运行,它需要被嵌入HTML中,然后浏览器才能执行 JavaScript 代码。 通过 script 标签将 JavaScript 代码引入到 HTML 中,有3种方式: 1.1. 内嵌式(嵌入式) 直接写在html文件里,用s…

[C/C++]数据结构 链表OJ题:随机链表的复制

题目描述: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新…

从零开始 通义千问大模型本地化到阿里云通义千问API调用

从零开始 通义千问大模型本地化到阿里云通义千问API调用 一、通义千问大模型介绍 何为“通义千问”? “通义千问大模型”是阿里云推出的一个超大规模的语言模型,具有强大的归纳和理解能力,可以处理各种自然语言处理任务,包括但…

Oracle主备切换,ogg恢复方法(集成模式)

前言: 文章主要介绍Oracle数据库物理ADG主备在发生切换时(switchover,failover),在主库运行的ogg进程(集成模式)如何进行恢复。 测试恢复场景,因为集成模式不能在备库配置,所以场景都是基于主库端: 1 主备发生switchover切换,主库…

VUE(一)

1.vue简介 英文官网: Vue.js - The Progressive JavaScript Framework | Vue.js 中文官网: Vue.js - 渐进式 JavaScript 框架 | Vue.js 2.Vue的特点 3.初识VUE 在官网下载VUE.js,有两个版本&#xff0c;一个开发一个生产 <!DOCTYPE html> <html lang"en"…

贝锐蒲公英云AP,企业WiFi功能如何使用?

1. 功能介绍 基于WPA2-EAP安全认证技术&#xff0c;为企业提供了一套易用安全的企业无线网络,实现企业员工通过蒲公英客户端一键连接企业无线WiFi。自动分配一人一帐一密&#xff0c;无需配置证书或手动输入密码&#xff0c;减少沟通成本&#xff0c;方便快捷&#xff0c;提高…

前置语音群呼与语音机器人群呼哪个更好

最近通过观察自己接到的营销电话&#xff0c;通过语音机器人外呼的量应该有所下降。同时和客户交流获取到的信息&#xff0c;也是和这个情况类似&#xff0c;很多AI机器人群呼的量转向了OKCC前置语音群呼。询问原因&#xff0c;说是前置语音群呼转化更快&#xff0c;AI机器人群…

Android修行手册-POI操作中文API文档

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分…

pm2在Windows环境中的使用

pm2 进程管理工具可以Windows操作系统上运行&#xff0c;当一台Windows电脑上需要运行多个进程时&#xff0c;或者运维时需要运行多个进程以提供服务时。可以使用pm2&#xff0c;而不再是使用脚本。 1. 使用PM2管理进程 1.1. 启动PM2项目 1.1.1. 直接启动项目 参数说明&…

PostgreSQL 数据定义语言 DDL

文章目录 表创建主键约束非空唯一约束检查约束外键约束默认值约束 触发器表空间构建表空间 视图索引索引的基本概念索引的分类创建索引 物化视图 表创建 PostgreSQL表的构建语句与所有数据库都一样&#xff0c;结构如下&#xff0c;其核心在于构建表时&#xff0c;要指定上一些…