zoukankan      html  css  js  c++  java
  • redis的持久化功能

    基于快照持久化

    修改配置文件,开始基于快照的选项
    
    [root@localhostbin]#vim /etc/redis/redis.conf
    

    stop-writes-on-bgsave-error yes #后台存储错误停止写。
    rdbcompression yes #使用LZF压缩rdb文件。
    rdbchecksum yes #存储和加载rdb文件时校验。
    dbfilename dump.rdb #设置rdb文件名。
    dir ./ #设置工作目录,rdb文件会写入该目录。

    指 定 的 时 间 间 隔 内 保 存 数 据 快 照
    优 点
    令 适 合 用 于 进 行 备 份
    fork 出 子 进 程 进 行 备 份 , 主 进 程 没 有 任 何 io 操 作
    令 恢 复 大 数 据 集 时 的 速 度 快
    缺点
    特定条件下进行一个持久化,容易丢失数据
    庞大数据时,保存会出现性能问题

    基于文件追加方式持久化(AOF)

    redis.conf配置 :

    	appendonly yes # 是否打开 aof日志功能
    	appendfilename "appendfile.aof" 文件的名称
    	appendfsync always   # 每1个命令,都立即同步到aof. 安全,速度慢,不推荐
    	appendfsync everysec # 折衷方案,每秒写1次,推荐
    	appendfsync no      # 写入工作交给操作系统,由操作系统判断缓冲区大小,统一写入到aof. 同步频率低,速度快,性能最好,但是持久化没有保证
    	no-appendfsync-on-rewrite  yes: # 正在导出rdb快照的过程中,要不要停止同步aof
    	auto-aof-rewrite-percentage 100 #aof文件大小比起上次重写时的大小,增长率100%时,重写
    	auto-aof-rewrite-min-size 64mb #aof文件,至少超过64M时,重写
    

    先 把 命 令 追 加 到 操 作 日 志 的 尾 部 , 保 存 所 有 历 史 操 作
    优 点
    令 数 据 非 常 完 整 , 故 障 恢 复 丢 失 数 据 少
    令 可 对 历 史 操 作 进 行 处 理
    缺点:
    文件的体积大
    速度低于RDB且故障恢复速度慢

    为aof备份文件做优化处理

    ./redis-cli bgrewriteaof
    

    redis的持久化相关指令

    bgsave异步保存数据到盘(快照保存)
    lastsave返回上次成功保存到磁盘的uni×时间戳
    shutdown同步保存到服务器并关闭redis服务器
    bgrewriteaof当日志文件过长时优化AOF日志文件存储

    例如:
    ./redis-cli bgrewriteaof
    ./redis-cli bgsave
    ./redis-cli - h 127.0.0.1-p 6379 bgsave #手动发起快照
    
  • 相关阅读:
    MOSS 2010 修改管理员密码 欧阳锋
    MOSS2010 中“找不到位于xxxx的web应用程序”的解决办法 欧阳锋
    MSSQL 2008 无法修改表问题的解决 欧阳锋
    不是每个在你身上拉屎的都是你的敌人 欧阳锋
    笑一笑 欧阳锋
    隐藏MOSS2010 左边的导航 欧阳锋
    爱情与婚姻的区别 欧阳锋
    两年后,我们怎么办
    C#控件的闪烁问题解决方法总结
    Linux内核编译配置过程
  • 原文地址:https://www.cnblogs.com/qinsilandiao/p/10873779.html
Copyright © 2011-2022 走看看