聊一下Redis持久化RDB和AOF

存储 存储软件 Redis
持久化的放到硬盘中,当我们需要这些数据的时候,启动载入RDB文件,数据将会被存入内存中,其实RDB就是一种快照的方式持久化存储数据,也可以作为一种复制媒介。

[[386476]]

本文转载自微信公众号「UP技术控」,作者conan5566。转载本文请联系UP技术控公众号。  

RDB

RDB是Redis内存到硬盘的快照,用于redis持久化,创建RDB二进制文件,将存储在内存中的数据,持久化的放到硬盘中,当我们需要这些数据的时候,启动载入RDB文件,数据将会被存入内存中,其实RDB就是一种快照的方式持久化存储数据,也可以作为一种复制媒介。

触发机制--主要三种方式

  1. save 同步命令(会阻塞redis)
  2. bgsave 异步命令(fork)
  3. 自动
  1. #关闭自动保存配置#save 900 1   #900秒 改了一次就自动生成RDB文件#save 300 10   #300秒修改了10次就自动生成RDB文件 
  2. dbfilename dump-${port}.rdb   #rdb文件名 
  3. dir /bigdiskpath      #分盘,rdb文件保存位置 
  4. stop-writes-on-bgsave-error yes  #bdsave出错,停止写入 
  5. rdbcompression yes           #采用压缩位置 
  6. rdbchecksum yes            #开启校验和 

AOF

RDB存在的问题:耗时耗性能,阻塞丢失数据

AOF运行原理:每执行一条命令,就在AOF中增加一条记录。当需要恢复时,直接执行AOF写入redis

AOF三种策略

  1. always(每条命令都把缓冲区fsync到硬盘)
  2. everysec(每秒刷新一次,每秒吧缓冲区fsync到硬盘)
  3. no(跟随操作系统,有操作系统决定,不可控)

AOF重写配置

  1. AOF重写配置 
  2.  
  3. auto-aof-rewrite-min-size #AOF重写需要的最小尺寸 
  4. auto-aof-rewrite-percentage #AOF文件增长率 
  5. aof_current_size #统计当前aof文件大小 
  6. aof_base_size #aof上次启动和重写的尺寸 

区别

总结

AOF是全量备份,RDB是增量备份。

 

责任编辑:武晓燕 来源: UP技术控
相关推荐

2023-05-11 09:12:35

RedisRDB日志

2021-07-18 07:59:42

RedisRDBAOF

2019-05-17 08:55:49

RedisRDBAOF

2020-12-11 11:40:37

RDBAOFRedis

2024-03-26 00:03:08

Redis数据RDB

2020-01-06 14:54:31

RDBAOFRedis

2021-10-18 07:43:30

RedisAOF日志RDB快照

2023-03-13 08:08:48

数据库Redis

2021-02-04 08:01:35

RedisRDBAOF

2021-05-28 10:25:39

Redis数据库内存

2021-12-12 10:29:41

AOFRedisAOF日志

2023-09-12 10:49:44

Redis数据库

2021-08-11 09:37:11

Redis持久化磁盘

2022-08-30 10:15:27

Kubernetes数据持久化管理

2021-01-05 10:48:38

RedisAOF日志RDB快照

2021-04-21 14:19:52

javaignalHandle接口

2019-11-18 16:20:48

RedisRDB数据库

2020-02-18 16:14:33

RedisRDBAOF

2021-04-27 07:52:18

SQLNULLOR

2012-03-07 09:18:06

Redis
点赞
收藏

51CTO技术栈公众号