【学习笔记】Redis学习笔记——第10章 RDB持久化

第10章 RDB持久化

RDB是用来做持久化的二进制压缩文件

10.1 RDB文件的创建与载入

1>SAVE命令阻塞主线程创建。

2>EGSAVE开子线程创建。

3>优先使用AOF进行初始化数据库,否则,使用RDB文件初始化,因为AOF文件的写入更加频繁,可以更加完整的还原数据库数据。

10.2 自动间隔性保存

通过Save配置,可以让Redis周期性任务执行时检查配置时间内是否进行了配置次数以上的修改,如果有则使用EGSAVE命令保存RDB文件。

10.2.2 dirty计数器和lastSave属性

dirty:自上次保存后服务器进行过多少次修改。

lastSave:服务器进行上次保存的时间。

10.3 RDB文件结构

1>REDIS:文件开头,在载入时快速判断是否为RDB文件。

2>db_version:RDB文件版本号。

3>database:全部数据库的全部键值对。

4>EOF:RDB文件结束标志。

5>check_sum:校验用,校验文件是否损坏。

10.3.1 database部分

1>SELECTDB:标志一个新的database开始读取。

2>db_number:数据库ID

3>key_value_pairs:全部键值对及过期时间。

10.4 分析RDB文件

略,用到的时候再说吧。(P133)

相关推荐
医工交叉实验工坊5 小时前
2026国自然改版后,该如何写
学习
●VON5 小时前
DeepSeek-V3.2 模型在 OpenJiuWen 中的部署实践
学习·华为·von·openjiuwen
DemonAvenger5 小时前
Redis与微服务:分布式系统中的缓存设计模式
数据库·redis·性能优化
咚咚王者5 小时前
人工智能之核心基础 机器学习 第七章 监督学习总结
人工智能·学习·机器学习
不爱学英文的码字机器5 小时前
用 openJiuwen 构建 AI Agent:从 Hello World 到毒舌编辑器
人工智能·redis·编辑器
grd45 小时前
Electron for OpenHarmony 实战:Pagination 分页组件实现
python·学习
W|J5 小时前
ES 学习笔记
笔记·学习·elasticsearch
张人玉6 小时前
西门子 S7 PLC 通信 WPF 应用分析笔记
笔记·c#·wpf·plc
山土成旧客6 小时前
【Python学习打卡-Day35】从黑盒到“玻璃盒”:掌握PyTorch模型可视化、进度条与推理
pytorch·python·学习
@zulnger6 小时前
python 学习笔记(循环)
笔记·python·学习