黑马程序员技术交流社区

标题: 【上海校区】就业: redis的RDB持久化机制 [打印本页]

作者: 执迷不悟    时间: 2020-5-22 09:32
标题: 【上海校区】就业: redis的RDB持久化机制
本帖最后由 执迷不悟 于 2020-5-22 09:35 编辑

                                                     redis的RDB持久化机制

RDB和AOF持久化机制介绍
RDB
AOF

如果同时使用RDB和AOF两种持久化机制,那么redis重启是会适合于AOF来构建数据,因为AOF的数据更加完整
RDB和AOF持久化机制优缺点

RDB持久化机制的优缺点
优点
缺点
AOF持久化机制的优缺点
优点
缺点
RDB和AOF持久化机制选择
综合使用RDB和AOF两种持久化机制,用AOF来保证数据不丢失,作为数据恢复的第一选择,用RDB来做不同程度的冷备,在AOF文件都丢失和损坏不可用的时候,还可以用RDB来进行快速的数据恢复。

RDB和AOF持久化配置
1. RDB持久化机制配置
在redis.conf文件中进行RDB持久化方案配置
  save 60 1000
  # 60秒之内,有超过1000个key发生变化,生成一个新的dump.rdb文件,删除旧文件,这个操作也被称为snapshotting 快照, 也可以手动调用save或者bgsave命令,同步或者异步执行rdb快照生成
  # save可以设置多个,save也被称为检查点,每个检查点时间到期,就去check一下,是否有对应数量的key发生变更,如果有生成一个新的dump.rdb
1.1 RDB持久化机制工作流程
2. AOF持久化机制配置
AOF持久化,默认是关闭的,默认打开的是RDB,修改redis.conf配置文件中的 appendonly yes 开启AOF持久化在生产环境AOF都需要开启
AOF持久化打开之后,redis每次接受到一条命令,就会写入日志文件中,当然是先写入os cache中,然后每隔一段时间fsync一下。
2.1 AOF的fsync策略
2.2 AOF的rewrite策略配置
在redis.conf 文件中修改配置实现
  auto-aof-rewrite-percentage 100 #增长百分比
  auto-aof-rewrite-min-size 64mb #增长超过多少大小
  ​
  举一个例子:
  比如上次AOF rewrite之后的文件大小是128md,redis继续写入日志,单发现增长比例超过之前的100% (也就是256md),并且增长大小超过64md,那么就会触发rewrite
2.3 rewrite执行流程








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2