redis的持久化功能
2024-08-31 10:58:55
基于快照持久化
修改配置文件,开始基于快照的选项
[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 #手动发起快照
最新文章
- 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)
- 【英语】Bingo口语笔记(1) - Hold
- 转:尝试用Gearman实现分布式处理(PHP)
- AvalonEdit 移除自身ScrollViewer (可配合外部自定义ScrollViewer 使用)
- LINQ 图解
- Yii2 数据操作DAO
- CSS截取字符串,额外的文本显示以省略号
- Jenkins集成源码静态分析工具
- JavaScript正则表达式(Regular Expression):RegExp对象
- csv文件转json
- 基于TC做流量控制
- [SP10628]Count on a tree
- JDBC(13)—JDBC调用存储过程和函数
- BZOJ2795&;2890&;3647[Poi2012]A Horrible Poem——hash
- iOS循环引用常见场景和解决办法
- eclipse 离线安装插件报cannot perform operation.Computing alternate solutions...解决办法
- mac上怎么安装dmg
- mount --bind 的妙用
- python 元组切片
- Android源码大放送之material design类型