Redis持久化之AOF
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,背景:RDB不足之处1.耗时,耗性能生成快照文件耗时,load快照文件耗时Fork子进程网络开销写文件磁盘I/O开销2.不可控,丢失数据会丢失最后一次快照最后操作的数据。一、工作流程Redis写操作命
千家信息网最后更新 2025年11月11日Redis持久化之AOF
背景:RDB不足之处
1.耗时,耗性能
生成快照文件耗时,load快照文件耗时
Fork子进程网络开销
写文件磁盘I/O开销2.不可控,丢失数据
会丢失最后一次快照最后操作的数据。
一、工作流程
Redis写操作命令 --> aof缓冲区 --> aof文件
注意,aof缓冲区的数据同步到磁盘的频率d由aof策略决定
二、AOF三种策略
1.Always 总是
每条指令都即时写入
不会丢失数据,磁盘I/O开销
2.Every second每秒
系统默认策略
每分钟写入一次
可能丢失一秒数据
3.No系统自动
不可控
3、AOF重写
随着时间得推移,aof文件日益变大。会降低磁盘性能,降低数据恢复速度。
目的:1.减少磁盘占用;2.加快恢复速度。
重写操作
方式一,客户端手动发送指令bgrewriteof
服务端fork子进程,子进程对内存中的数据进行回塑然后写入现有的aof文件。
方式二,通过配置文件触发
文件增长率
auto-aof-rewrite-percentage 100
最小文件尺寸
auto-aof-rewrite-min-size 64mb
四、AOF实验
1.redis写操作
27.0.0.1:6379> set hello worldOK127.0.0.1:6379> set hello phpOK127.0.0.1:6379> set hello javaOK127.0.0.1:6379> set hello jackOK127.0.0.1:6379> set zhang sanOK127.0.0.1:6379> set li siOK127.0.0.1:6379> set li xiaolongOK上述操作多次覆写hello,li两个key。
2.查看aof日志文件
$ sudo cat -b /var/lib/redis/appendonly.aof 1 REDIS0009� redis-ver5.0.3�� 2 redis-bits�@�ctime��]used-mem�غ aof-preamble��$e���q �*2 3 $6 4 SELECT 5 $1 6 0 7 *3 8 $3 9 set 10 $5 11 hello 12 $5 13 world 14 *3 15 $3 16 set 17 $5 18 hello 19 $3 20 php 21 *3 22 $3 23 set 24 $5 25 hello 26 $4 27 java 28 *3 29 $3 30 set 31 $5 32 hello 33 $4 34 jack 35 *3 36 $3 37 set 38 $5 39 zhang 40 $3 41 san 42 *3 43 $3 44 set 45 $2 46 li 47 $2 48 si 49 *3 50 $3 51 set 52 $2 53 li 54 $8 55 xiaolong3.重写aof
127.0.0.1:6379> bgrewriteaofBackground append only file rewriting started4.查看重写后的aof日志文件
whqlkj@whqlkj:~$ sudo cat -b /var/lib/redis/appendonly.aof 1 REDIS0009� redis-ver5.0.3�� 2 redis-bits�@�ctime����]used-mem�ػ aof-preamble���zhangsanlxiaolonghellojack��XȰ-���五、RDB与AOF对比
| 对比环节 | RDB | AOF |
|---|---|---|
| 启动优先级 | 低 | 高 |
| 数据恢复速度 | 快 | 慢 |
| 文件大小 | 小(rdb二进制压缩文件) | 大(重写后的日志记录文件) |
| 数据安全 | rdb丢失数据(可能会丢失最后一次save/bgsave快照之后操作的数据) | aof根据策略决定(详见3种同步策略) |
| 操作重量级 | 重(rdb快照) | 轻(aof追加日志) |
文件
数据
快照
磁盘
策略
日志
开销
进程
速度
性能
指令
数据恢复
方式
系统
缓冲区
同步
缓冲
最小
安全
两个
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
计算机网络技术学习教程
成都软件开发公司待遇
什么的关系型数据库
网络技术解析软件
网络安全绿色上网的内容
网络技术带来哪些变化
serv-u服务器
未转变者怎么服务器ip
广元软件开发要多少钱
广州辉冠互联网科技有限公司
git java文件服务器
手机网络安全图片
勤哲excel服务器安装
软件开发有夜班吗
分享网络安全知识
分布式数据库系统主副本
关于关系型数据库下述描述错误的是
高端服务器搬运哪家强
轻量云服务器安装5.8
小型数据库系统是怎样运行
校园网络安全工作建议
聊城市网络安全
仁怀服务器
西艾斯nba数据库
MGW服务器
数据库pltive
宜兴市万融网络技术有限公司
社群营销软件开发
网络安全保障系统+滴滴
关于经期护理的软件开发