首页 > 数据库 > Redis > 正文

rdb-aof混合持久化

齐天大圣
发布: 2020-05-22 17:51:28
原创
188 人浏览过

之前分别写过RDB持久化以及AOF持久化的文章,他们各有各的优缺点。rdb文件体积小,加载速度快,但不能做到实时持久化。aof可以做到实时持久化,但是文件体积比起rdb太过巨大。那有没有办法把这两种方式结合起来,文件体积小,另外还能做到实时持久化呢?

非常幸运,redis从4.0后就支持rdb-aof混合持久化了。而且是现在比较推荐的方式。

配置也非常简单,只需要配置两个选项即可。

appendonly yes
aof-use-rdb-preamble yes
登录后复制

注意,appendonly也必须设为yes。

案例

通过一个案例,展示给大家看看rdb-aof混合持久化的过程。

目前,我redis数据是空的

cat appendonly.aof
登录后复制

该文件目前没有任务内容。现在,我们执行一条set命令,再来看看

# 执行了一条命令后
127.0.0.1:6379> set name gwx
OK
# appendonly.aof里面有内容了
# cat appendonly.aof 
*3
$3
set
$4
name
$3
gwx
登录后复制

现在aof文件里存放的是正常的aof格式内容。然后再执行bgrewriteaof及一个set命令后,再看看appendonly.aof内容。

127.0.0.1:6379> bgrewriteaof
Background append only file rewriting started
127.0.0.1:6379> set age 28
OK
# cat appendonly.aof 
REDIS0009 redis-ver5.0.5
redis-bits		
登录后复制

以上是rdb-aof混合持久化的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
1
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板