Redis的数据持久化机制RDB,AOF

来源:互联网 发布:如何做好业务员知乎 编辑:程序博客网 时间:2024/06/14 13:12

Redis数据库的数据持久化机制有两种:RDB和AOF。

RDB: 内存中的数据集快照写入磁盘
优势
1). 备份和恢复方便, 一个数据库只有一个持久化文件
2). 性能最大化, 在开始持久化之前主进程会fork出一个子进程, 专门用于保存数据集快照
3). 与AOF相比, 持久化文件小, 易恢复
劣势
1). 可能会丢失数据(两次备份之间的数据)
2). 若数据集比较大, 备份时会耗费比较多的资源,可能会使服务进程中断几百毫秒
持久化配置
1). 快照文件保存在 dump.rdb 中, 文件目录和文件名都可以在redis.conf中配置
2). save  60  10 : 60秒内有10个key发生变化, 就触发快照操作
3). dbfilename : 备份的文件名
4). dir : 备份的目录位置

AOF(append only file) : 以日志的形式记录服务器的每一次写操作
优势
1). 数据安全性更高 , 丢失数据的可能性小
2). 采用append模式, 即使备份时宕机, 也不会影响之前的文件
3). 若日志量过大, redis会自动启动rewrite对日志进行瘦身.
4). AOF日志结构清晰, 易于理解, 易于恢复
劣势
1). 相比RDB文件, AOF文件比较大, 恢复较慢
2). 由于同步机制不同, AOF运行效率上要慢于RDB

特点

1).同步策略:每修改同步,每秒同步,不同步
2.可瘦身,可以配置或者手动瘦身文件
这个rewriteaod可以手动操作,直接rewriteaod即可。这样就直接瘦身了。(也就是比如,a的值赋值1,再赋值2,再赋值3,,,,,这里的每一个步骤都会记录在aof文件里,rewrite之后呢,就只会记录最后一条了)


原创粉丝点击