返回Redis-a......登陆

Redis-aof持久化

阿神2016-11-09 13:56:561189

什么是redis的aof?

aof 是 appendonly file 的缩写, 是redis系统提供的一种记录redis操作的持久化方案, 在aof生成的文件中, 将记录发生在redis的操作, 从而达到在redis服务器重启或者宕机后, 继续恢复之前的数据状态

AOF文件的保存位置和 RDB文件的位置相同,都是通过dir参数设置的,默认的文件名是

appendonly.aof,可以通过appendfilename参数修改

aof的配置参数

appendonly no    #是否打开aof日志功能
appendfsync always    #每一个命令, 都立即同步到aof, 安全, 速度慢
appendfsync everysec    #折中方案, 每秒写一次
appendfsync no    #写入工作交给操作系统, 由操作系统判断缓存去大小, 统一写入到aof, 同步频率低, 速度快
no-appendfsync-on-rewrite yes    #正在导出 rdb 快照过程中, 要不要停止同步 aof
auto-aof-rewrite-percentage 100    #aof文件大小比起上次重写时的大小, 增长率 100% 时, 重写
auto-aof-rewrite-min-size 64mb    #aof文件, 至少超过 64M 时重写

问: 在dump rdb过程中, aof如果停止同步数据会不会丢失?

答: 不会, 所有的操作缓存在内存的队列里, dump完成后统一操作

问: aof重写是什么

答: aof重写是指把内存中的数据, 逆化成命令, 写入 .aof 日志里, 以解决 aof 日志过大的问题

问: 如果rdb文件和aof文件都存在, 优先用谁来恢复数据?

答: aof

问: 两种是否可以同时使用?

答: 可以, 推荐这样做

问: 恢复时rdb和aof哪个恢复的快?

答: rdb快, 因为它是数据的内存映射, 而aof是命令, 需要逐条执行

Redis允许同时开启AOF和RDB,既保证了数据安全又使得进行备份等操作十分容易。此时重新启动Redis后, Redis会使用AOF文件来恢复数据

实际上当Redis服务器挂掉后, 重启时将按照以下恢复数据到内存


最新手记推荐

• 用composer安装thinkphp框架的步骤• 省市区接口说明• 用thinkphp,后台新增栏目• 管理员添加编辑删除• 管理员添加编辑删除

全部回复(0)我要回复

暂无评论~
  • 取消回复发送