Redis中的持久化操作

 

 本篇博客主要来讲解一下如何Redis中的持久化操作,当然了不是一篇理论性的博客,主要还是分享一下在redis中如何来配置持久化操作。

 1.介绍

 redis为了内部数据的安全考虑,会把本身的数据以文本形式保存到硬盘中一份,在服务器重启之后会自动把硬盘的数据恢复到内存(redis)里边。数据保存到硬盘的过程就称为“持久化”效果。


 2.snap shotting 快照持久化

 这个持久化的操作在redis中是默认开启的,一次性把redis中全部的数据保存为一份存储在硬盘中,如果数据非常多的话,就不适合该持久化操作。

 在redis.conf文本中可以配置频率,默认如下图



 save 900 1:表示900秒内如果超过1个key被修改,则发起快照保存

 save 300 10:表示300秒超过10个key被修改,发起快照

 save 60 10000:表示60秒超过10000个key被修改,发起快照


 以上3个save的意思表示,数据修改的频率非常高,备份的频率也高

 最后保存的目录如下,也可以修改




 手动发起快照持久化

 在redis中,我们也可以手动的发起快照保存,来保存我们的数据,常用的命令如下

 bgsave:异步保存数据到磁盘

 lastsave:返回上次成功保存到磁盘的时间戳

 shutdown:同步保存到服务器并关闭redis服务器

 bgrewriteaof:当日志文件过长时优化AOF日志文件存储

 #./redis-cli bgrewriteaof  #./redis-cli -h hostname -p port


3.append only file(AOF持久化)

 这个持久化操作可以把用户的每个命令都保存到数据中,包括CRUD操作,还原数据的时候就是把这些执行执行而已

 首先需要开启AOF持久化操作,同样需要修改redis.conf文件,需要注意的是开启后会清空redis中的数据,因此在安装完redis后就需要开启AOF操作



 最后启动后,会在当前目录中看到appendonly.aof文件。

 AOF的追加频率

 同样需要编辑redis.conf文件,来修改AOF的追加频率,常见参数如下

 #appendfsync always:每次收到命令就立即强制写入磁盘,性能最慢,但是保证完全的持久化

 #appendfsync everysec:每秒钟强制写入磁盘一次,在性能和持久化方面最了很好的折中

 #appendfsync no:完全依赖操作系统,性能好的时候就持久,不好的时候就不持久化

 




  • 0
    点赞
  • 6
    评论
  • 4
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值