Redis(八)----Redis的持久化

本文介绍了Redis的两种持久化机制:RDB和AOF。RDB通过快照的方式定期保存整个数据库的状态;AOF则记录每一次写操作,实现数据的完整恢复。两者各有优劣,可根据实际需求选择使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

Redis的高性能由于其将所有数据都存储在了内存中,为了使redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化。

Redis支持两种方式的持久化,一种是RDB方式,一种是AOF方式。可以单独使用其中一种或将二者结合使用。

1.1 RDB持久化(默认支持,无需配置)

该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘


快照的核心原理就是把redis在某个时间内存内的所有数据都写入硬盘。快照其实就是一备份。

1.2 AOF持久化

该机制将以日志的形式记录服务器所处理的每一个操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。

二、RDB

2.1 优势

如果数据量很大的时候,不用像aof那样存储那么多的执行的过程,占用空间小。

2.2 劣势

rdb存快照是在某个时间点存的,所以,有可能会丢失数据。

2.3 配置说明Snapshotting

2.3.1 快照参数设置

我们查看redis.config


save 900 1 每900秒(15分钟)至少有1个key发生变化,则dump内存快照。

save 300 10 每300秒(5分钟)至少有10个key发生变化,则dump内存快照。

save 60 10000 每60秒(1分钟)至少有10000个key发生变化,则dump内存快照。

2.3.2 保存位置设置


三、AOF

3.1 优势

实时性好。每个操作步骤都保存了。不会丢失数据。

3.2 劣势

保存的日志太多了。

3.3 配置AOF

3.3.1 配置信息



always  每次有数据修改发生时都会写入aof文件

everysec  每秒同步一次,该策略为aof的缺省策略

no 从不同步。高效但是数据不会被持久化


3.3.2 数据恢复演示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值