zoukankan      html  css  js  c++  java
  • Redis中的持久化操作

     

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

     1.介绍

     redis为了内部数据的安全考虑,会把本身的数据以文本形式保存到硬盘中一份,在server重新启动之后会自己主动把硬盘的数据恢复到内存(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:同步保存到server并关闭redisserver

     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:全然依赖操作系统,性能好的时候就持久,不好的时候就不持久化

     




  • 相关阅读:
    Qt 动画之QPropertyAnimation
    QT 文件的读写
    keil编译程序出现declaration may not appear after executable statement in block 错误 解决办法
    QT UDP通信接受发送数据
    QT 样式表
    QT 滑动条和滚动条的样式
    C++调用dll例子
    MFC非模态窗口gdi+自绘图片
    获取windows操作系统分辨率(DPI)
    单个循环输出数圈(简单易懂)
  • 原文地址:https://www.cnblogs.com/zhchoutai/p/8443612.html
Copyright © 2011-2022 走看看