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

相关推荐
笑洋仟42 分钟前
Linux StorCLI工具安装和使用
linux·数据库·redis
the4thone44 分钟前
AI基础 笔记
人工智能·笔记
im_AMBER1 小时前
Leetcode 93 找出临界点之间的最小和最大距离
c++·笔记·学习·算法·leetcode
jimmyleeee1 小时前
人工智能基础知识笔记三十一:Langfuse的几种tracing的方法
人工智能·笔记
Li_7695322 小时前
Redis 进阶(四)—— 主从复制(二)
redis
程序员Null的自我修养2 小时前
全面整理Redis过期删除与内存淘汰策略底层原理机制
数据库·redis
日更嵌入式的打工仔4 小时前
Ehercat代码解析中文摘录<3>
笔记·ethercat
玄同7654 小时前
Python 系统编程双雄:sys 与 os 模块深度实践指南
开发语言·数据库·人工智能·windows·笔记·python·microsoft
+VX:Fegn08955 小时前
计算机毕业设计|基于springboot + vue在线教育学习系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·学习·课程设计
航Hang*5 小时前
第六章:网络系统建设与运维(高级)—— STP生成树协议
运维·服务器·网络·笔记·ensp