欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Redis持久化】 RDB持久化实验

程序员文章站 2024-03-21 10:56:34
...

【Redis持久化】 RDB持久化实验

1. 单机版Redis下载、安装以及生产环境启动方案

1.1 学习内容

  1. 如何配置RDB持久化
  2. RDB持久化原理
  3. 基于RDB持久化实验

1.2 如何配置RDB持久化

采用之前部署的6379端口的Redis


# 进入redis配置文件目录
cd /etc/redis/

# 编辑配置文件
vim 6379.conf

# 配置rdb持久化,大概220行
#每隔5秒,检查一次,如果有一条数据变更,就生成一个dump快照文件,保存此刻redis内存中完整的数据快照文件,snapshotting
save 5 1

Redis持久化】 RDB持久化实验

拓展:

  1. save可以设置多个就是多个snapshotting检查点,每到一个检查点,就会去check一些,是否有指定key数量发生了变更,如果有,就生成一个新的dump.rdb文件

  2. 可以手动调用save或者bgsave命令,同步或者是异步执行rdb快照文件

1.3 RDB持久化工作原理

  1. redis根据配置尝试生成rdb快照文件(dump.rdb)
  2. fork一个子进程出来
  3. 子进程尝试将数据dump到临时的rdb快照文件中
  4. 完成rdb快照文件的生成后,就会替换之前的快照文件

1.4 rdb持久化实验

  1. redis设置几条数据,采用redis-cli SHUTDOWN(正常关闭Redis进程),然后重新启动Redis,看之前数据还在不在。

拓展:
a. redis-cli SHUTDOWN命令方式停止redis,会在redis退出的时候将内存中的数据立即生成一份完整的rdb快照文件到备份目录中。

b. 查询redis备份目录:vim /etc/redis/6379.conf,搜索"dir",大概在265行,dump.rdb快照文件就存放在该目录下。

Redis持久化】 RDB持久化实验

  1. redis保存几条新的数据,采用kill的方式关闭Redis进程,模拟redis故障一次退出,再重启redis,查看数据是否还存在。

  2. 手动设置一个save检查点,save 5 2,测试变更一条和多条数据,5s之后查看dump.rdb文件内容是否发生变更。kill掉redis进程,再重启redis,查看数据是否存在。

参考石衫老师 《亿级流量电商详情页系统》课程笔记

亲,如果觉得还不错,点个赞呗!!!