【学习笔记】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)

相关推荐
骐骥13 分钟前
学习:Webview的runJavaScript和runJavaScriptExt有什么区别
学习·鸿蒙
存在morning3 分钟前
【Flink SQL 学习笔记 二】实时聚合:用窗口和 Watermark 把订单按时段统计
sql·学习·flink
高亦真11 分钟前
今天是学习嵌入式的第31天
linux·学习·算法
CarIise18 分钟前
JavaScript进阶与轮播图实现 课堂笔记
开发语言·javascript·笔记
xuankuxiaoyao25 分钟前
8.27 WQ 直播学习
学习
m4Rk_31 分钟前
【论文阅读】Agent 记忆机制(52):Cognitive Scaffold——面向 DeepResearch Agent 的结晶化记忆框架
论文阅读·人工智能·学习·开源·github
Sherotree36 分钟前
Agent 工程笔记①:工具调用失败时,先查哪三层
网络·数据库·笔记
薛定e的猫咪36 分钟前
【源码解读版】ContraBAR:用 CPC 对比学习替代变分推断做贝叶斯元 RL
人工智能·深度学习·学习·算法·机器学习
RisunJan42 分钟前
鸿蒙(HarmonyOS NEXT)开发小白入门学习计划表
学习·华为·harmonyos
征尘bjajmd1 小时前
黑马AI大模型机器学习课程笔记(个人记录、仅供参考)
人工智能·笔记·机器学习