redis学习四,redis的持久化操作

redis的持久化

redis是一个支持持久化操作的内存数据库,也就是说redis经常需要将数据同步到硬盘中老保证数据的持久化。

redis持久化的两种方式:

1.snapshotting(快照)默认方式,将内存中以快照的方式写入到二进制文件中,默认为dump.rdb,可以通过配置redis.conf设置自动做快照的持久化操作。我们可以配置redis在n秒内如果超过m个key就自动做快照。
snapshotting配置:
save 900 1 说明:900s内如果超过1个key被修改,则发起快照保存。
save 300 10 说明:300s内如果超过10个key被修改,则发起快照保存。
save 60 1000 说明:60s内如果超过1000个key被修改,则发起快照保存。
这种方式一般在生产环境中我们并不常用。一般只在测试阶段进行这种设置。

2.append-only file(缩写aof)的方式,有点类似于oracle的日志,由于快照方式是在一定时间间隔内做一次,所以可能发生redis意外down的情况就会丢失最后一次修改操作的所有数据,aof比快照方式有更好的持久化性。是由于在使用aof时,redis会将收到的每一个写命令都通过write函数追加到命令中。当redis重新启动时会重新执行redis中执行的写命令来在内存中重建这个数据库的内容。这个文件在bin目录下。appendonly.aof,aof不是立即写入到硬盘中。可以通过配置文件修改强制写入到硬盘中。
aof配置:

appendonly yes 启动aof持久化方式。
appendfsync always   说明:收到写命令就立即写入磁盘中,效率最慢,但是保证完全持久化。(常用)
appendfsync everysec 说明:每秒钟写入磁盘一次,在性能和持久化方面做了很好的折中。
appendsync  no 说明:完全依赖os,性能最好,持久化没保证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值