首页 > 数据库 >redis持久化配置

redis持久化配置

时间:2023-05-25 18:06:15浏览次数:50  
标签:AOF 持久 配置 redis 默认 快照


redis有两种持久化方式:RDB和AOF。具体差别跟优缺点可参考redis数据的两种持久化方式对比,本篇只介绍这两种方式怎么配置

RDB配置方式

默认情况下,是快照RDB的持久化方式,将内存中的数据以快照的方式写入二进制文件中,默认的文件名是dump.rdb

redis持久化配置_redis

redis.conf默认配置:

save 900 1
save 300 10
save 60 10000

 配置含义:

 900秒内,如果超过1个key被修改,则发起快照保存

 300秒内,如果超过10个key被修改,则发起快照保存

 60秒内,如果1万个key被修改,则发起快照保存

 默认配置不方便看效果,可将快照频率设大一点,在redis.conf中增加一行:

save 10 1

保存后,启动redis服务端和客户端。在客户端输入命令:

redis持久化配置_redis_02

输入完,发现dump.rdb文件的修改日期变了,并且redis服务端增加了保存日志:

redis持久化配置_持久化_03

接下来,重启redis服务端和客户端,看数据是否真的持久化了:

redis持久化配置_redis_04

妥妥的~,说明使用RDB快照持久化成功了

 

AOF 配置方式

redis.conf默认配置:

appendonly no

配置文件中的appendonly修改为yes,开启AOF持久化。开启后,启动redis服务端,发现多了一个appendonly.aof文件

redis持久化配置_持久化_05

使用AOF做持久化,每一个命令以 Redis 协议的格式来保存,新命令会被追加到文件的末尾。 Redis 还可以在后台对 AOF 文件进行重写,使得 AOF文件的体积不会超出保存数据集状态所需的实际大小。实际上,AOF持久化并不会立即将命令写入到硬盘文件中,而是写入到硬盘缓存,在接下来的策略中,配置多久来从硬盘缓存写入到硬盘文件。所以在一定程度一定条件下,还是会有数据丢失,不过你可以大大减少数据损失

# appendfsync always
appendfsync everysec
# appendfsync no

配置含义:

always: 每次操作都会立即写入aof文件中

everysec: 每秒持久化一次(默认配置)

no: 不主动进行同步操作,默认30s一次

当然always一定是效率最低的,个人认为everysec就够用了,数据安全性能又高。Redis也允许我们同时使用两种方式,再重启redis后会从AOF中恢复数据,因为AOF比RDB数据损失小嘛

配置好后,启动redis客户端,输入命令:

redis持久化配置_持久化_06

最后的flushall是清除所有的键值。打开appendonly.aof文件,可以看到:

redis持久化配置_redis_07

去掉最后面的flushall(也可以按照redis协议增加命令),重启客户端和服务端,看数据是否真的持久化了:

redis持久化配置_持久化_08

妥妥的~,说明使用AOF持久化也成功了

标签:AOF,持久,配置,redis,默认,快照
From: https://blog.51cto.com/chengzheng183/6350506

相关文章

  • 多客社交圈子小程序的腾讯云实时音视频如何配置配置,适用于语音直播、交友类圈子系统un
    采用的腾讯的实时语音,经过我们对比和测试,腾讯的是最便宜的。新用户免费1万分钟,以后每1000分钟7元。第一步、腾讯云申请实时语音,实时音视频免费试用-购买指南-文档中心-腾讯云新用户免费可领取资源包1万分钟。第二步、添加应用后拿到appid和秘钥。填写在前端的配置文件里,根目录/sit......
  • SpringBoot中使用@Scheduled实现定时任务通过读取配置文件动态开关
    场景SpringBoot中定时任务与异步定时任务的实现:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/117083609上面讲的通过@Scheduled注解实现简单定时任务的方式。如果定时任务有多个,不同业务场景下需要动态配置某个定时任务的开关。可以通过@ConditionalOnPropert......
  • MySQL快速安装配置及相关命令
    安装下载https://dev.mysql.com/downloads/mysql/配置,解压并建立初始化配置文件my.ini,内容如下:[mysqld]#设置3306端口port=3306#设置mysql的安装目录basedir=D:\mysql-8.0.32-winx64#设置mysql数据库的数据的存放目录datadir=D:\mysql-8.0.32-winx64\data#允......
  • Pycharm中配置Pyinstaller工具 and 多文件打包
    一、Pycharm中配置Pyinstaller首先,要下载个pyinstaller库,用pipinstallinstaller等待完成即可(顺带记录下pip配置国内镜像的方法:国内源:阿里云http://mirrors.aliyun.com/pypi/simple/中国科技大学https://pypi.mirrors.ustc.edu.cn/simple/豆瓣http://pypi.douban.com/......
  • MySQL——2.数据库的安装及配置(亲测有效)及启动MySQL服务的两种方法
    安装文件的mysql-installer-community-8.0.3.0-rc.msi的链接:https://pan.baidu.com/s/1G-hO_IlhlFqVuhO_mHjKzA密码:emhm目录文章目录一、数据库的安装及配置步骤1.下载后,双击msi文件安装。2.打勾,点击Next3.选择server,点击Next4.点击Execute按钮5.点击Next按钮。6.点击Next按钮。......
  • 2.Redis的安装与配置-动力节点Redis7笔记
    2Redis的安装与配置这里是要将Redis安装到Linux系统中。2.1Redis的安装2.1.1克隆并配置主机修改主机名:/etc/hostname修改网络配置:/etc/sysconfig/network-scripts/ifcfg-ens332.1.2安装前的准备工作2.1.2.1安装gcc由于Redis是由C/C++语言编写的,而从官网下载的Redis......
  • Redis的安装与配置-动力节点最全Redis7笔记
    ##【动力节点】Redis入门到高级教程,全网最新最全redis缓存教程,redis百科大全2Redis的安装与配置这里是要将Redis安装到Linux系统中。2.1Redis的安装2.1.1克隆并配置主机修改主机名:/etc/hostname修改网络配置:/etc/sysconfig/network-scripts/ifcfg-ens332.1.2安装前的......
  • Nginx如何配置多个服务域名解析共用80端口详解
    前言由于公司一台服务器同时有多个服务,这些服务通过域名解析都希望监听80/443端口直接通过域名访问,比如有demo.test.com和product.test.com。这时候我们可以使用nginx的代理转发功能帮我们实现共用80/443端口的需求。备注:由于HTTP协议默认监听80端口,HTTPS协议默认监听443端口,所......
  • Esxi6.7 添加硬盘时提示 无法创建 VMFS 数据存储 - 无法更改主机配置 Group2 Raid5
     ESXI添加硬盘时提示无法创建VMFS数据存储-无法更改主机配置1.打开ESXI的SSH2.找到不能添加的硬盘路径3.用SSH操作 1.打开ESXI的SSH2.找到不能添加的硬盘路径我的是**个,找到你要添加但是不能添加的那个硬盘,点进去。完整的路劲为:比如我的:/vmfs/devices/disk......
  • B端业务crm 采购 销售审核流配置
    B端业务crm采购销售审核流配置[{"id":10,"name":"CRM系统-发票审核一","remark":"CRM系统发票审核流程一:含不同销售部门仅CEO审核即可","type":1,"create_uid":1,"create_time":"......