RDB和AOF机制

RDB


概念

  1. 在指定的时间间隔内,将内存的数据快照写入磁盘
  2. 实际过程是fork一个子进程,将数据集写入临时文件
  3. 写入成功后再替换之前的文件,用二进压缩存储、

优点

  1. 整个Redis数据库只包含一个文件dump.rdb,方便持久化
  2. 容灾性好,方便备份
  3. 性能最大化,fork子进程来完成写操作,让主进程处理命令
  4. 相对于数据集大时,比AOF的启动效率更高

缺点

  1. 数据安全性低,RDB是间隔一段时间进行持久化
  2. 如果持久化之间Redis发生故障,会发生数据丢失
  3. 由于RDB是通过fork子进程来协助完成数据持久化工作的
  4. 如果数据集过大时,可能会导致整个服务器停止几百毫秒,甚至一分钟

AOF


概念

  1. 以日志的形式记录服务器所在的每一个写,删除操作
  2. 查询操作不会记录,以文本的方式记录
  3. 可以打开文件看到详细的操作记录

优点

  1. 数据安全,Redis中提供了三种同步策略,每秒同步,每修改同步和不同步
  2. 通过append模式写文件,即使中途服务宕机也不会破坏已经存在的内容
  3. AOF机制的Rewrite模式,定期对AOF文件进行重写,达到压缩的目的

缺点

  1. AOF文件比RDB文件大,且回复速度慢
  2. 数据集大的时候,比RDB启动效率低
  3. 运行效率没有RDB高

RedisRDBAOF是两种不同的持久化机制RDB全称Redis Database Backup file,它是将内存中的所有数据记录在磁盘上的快照文件。当Redis实例故障重启后,可以从磁盘中的RDB文件读取数据来进行恢复。RDB文件默认保存在当前运行目录,每次触发RDB时会生成一个新的RDB文件来覆盖旧文件,以保证备份数据的最新性。 AOF全称Append Only File,它是将Redis的操作以日志的形式追加到文件中。AOF文件的保存路径与RDB的路径一致。如果同时开启了RDBAOFRedis会优先根据AOF文件来进行数据恢复。 RDBAOF的目的都是为了将Redis中的数据持久化到磁盘中,以防止数据丢失。因为Redis中的数据是基于内存的,一旦服务器断电或宕机,数据就会直接丢失。通过使用RDBAOF,可以在Redis实例故障重启后,根据备份文件进行数据恢复。 总结来说,RDB是将内存中的数据直接拷贝到文件中的持久化方式,而AOF是将Redis的操作以日志的形式追加到文件中的持久化方式。根据配置的不同,可以选择使用RDBAOF或同时使用两者来实现数据持久化。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span> #### 引用[.reference_title] - *1* *4* [详解RedisRDBAOF](https://blog.csdn.net/u014225032/article/details/125856164)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Redis持久化的两种方式:RDBAOF(详解)](https://blog.csdn.net/starboyxyh/article/details/127503310)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北顾丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值