redis AOF缓存

AOF和RDB都是redis的缓存方案。
RDB的思路是把内存中的缓存数据存到文件中,下次再打开redis服务时就重新加载到内存中去。
而AOF的思路是把服务器执行过的命令(读命令不算,因为读命令不会修改任何数据)都记录下来,存到文件中,下次再打开redis服务时就照着命令从之执行到尾,就可以达到恢复数据的目的。这种方式的弊端在于如果指令量比较大,那么恢复过程会很消耗时间。

如何使用AOF?
redis默认是关闭AOF的,我们需要在配置文件中将appendonly配置项设置为yes后,重启一下redis服务让配置生效。

如果AOF文件出错了怎么办?
AOF文件里记录的都是一些命令,还是比较容易看懂的,如果行数比较少的话可以人工去修复,如果比较多可以用redis给我们提供的修复工具来修复,我们在redis目录下运行redis-check-aof --fix appendonly.aof(这里appendonly.aof要替换成自己的aof文件名,默认都是这个)

同时开了aof和rdb会怎么样?
1、首先两个持久化都会正常工作,各自备份各自的数据
2、重新启动redis时会优先加载aof

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis AOF重写是一种机制,用于解决AOF文件过大导致IO性能问题的情况。AOF重写的过程并不需要对原有AOF文件进行读取、写入或分析操作,而是通过读取服务器当前的数据库状态来实现的。\[3\]AOF重写的执行流程包括命令追加、文件写入和文件同步以及文件重写。首先,Redis的写命令会被追加到缓冲区aof_buf中。然后,根据不同的同步策略,将aof_buf中的内容同步到硬盘,以确保数据的持久化。最后,定期进行AOF文件的重写,以达到压缩AOF文件的目的。\[3\]通过AOF重写,可以有效地减小AOF文件的大小,提高IO性能,同时保证数据的持久化。 #### 引用[.reference_title] - *1* *3* [缓存数据库REDIS之二:AOF重写原理](https://blog.csdn.net/qq_18343913/article/details/119343547)[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^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [redisaof的重写机制](https://blog.csdn.net/qq_63431773/article/details/131691454)[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^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值