redis的aof方式持久化

Redis提供两种持久化方式,RDB和AOF;与RDB不同,AOF可以完整的记录整个数据库,而不像RDB只是数据库某一时刻的快照; 
那么AOF模式为什么可以完整的记录整个数据库呢?  

原理:在AOF模式下,Redis会把执行过的每一条更新命令记录下来,保存到AOF文件中;当Redis需要恢复数据库数据时,只需要从之前保存的AOF文件中依次读取命令,执行即可,如果aof和rdb同时存在,redis优先使用aof。

aof配置文件:

appendonly yes  是否打开aof日志功能

appendfsync always   每一个命令都立刻同步到aof,安全但是速度慢
appendfsync everysec  折衷方案每秒一次,一般选用这种。
appendfsync no    交给操作系统,由操作系统判断缓冲区大小,同意写入aof中,频率低速度快。

no-appendfsync-on-rewrite yes     正在导出rdb文件,是否要停止aof

auto-aof-rewrite-percentage 100  aof文件比起上次重写时的大小,增长率是百分之百时重写。

auto-aof-rewrite-min-size 64mb   至少超过64m重写。


配置如上以后,启动redis,会发现在当前目录下面会多出一个aof文件 



设置键值对



然后查看aof文件内容,会发现多次同时设置一个键值对,每次都会在aof文件中有记录


但是上述会发现一个问题,如果多次操作同一个键值对,每次都会记录实在aof文件中,导致aof文件过大,其实只需要记录最后一次操作记录在aof

文件即可.这会用到aof重写,导致重写的aof里面操作命令减少。

bgrewriteaof






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值