持久化 - AOF - 备份Redis - 备份完整
append only file仅追加文件
流程 |
流程中文 |
流程英文 |
解释 |
1 |
命令写入 |
append |
所有的写入命令会追加到aof_buf(缓冲区)中 |
2 |
文件同步 |
sync |
AOF缓冲区根据对应的策略向硬盘做同步操作 |
3 |
文件重写 |
rewrite |
随着AOF文件越来越大,需要定期对AOF文件进行重写,达到压缩 的目的 |
4 |
重启加载 |
load |
当Redis服务器重启时,可以加载AOF文件进行数据恢复 |
开启
# redis.conf文件
配置项 |
释义 |
详解 |
appendonly yes |
开启AOF |
默认appendonly no |
appendfilename "appendonly.aof" |
文件名 |
|
appendfsync always |
同步刷 |
不丢数据,但影响性能 |
appendfsync everysec |
每秒刷 |
适中,断电最多丢失1秒数据 |
appendfsync no |
系统控制 |
性能好,但会丢失大量数据 |
auto-aof-rewrite-percentage 100 |
百分比重写 |
比上次文件大多少倍重写 |
auto-aof-rewrite-percentage 0 |
百分比重写 |
禁用重写 |
auto-aof-rewrite-min-size 64mb |
最小重写 |
最少到多少mb才开始重写 |
停机会执行
calling fsync() on the AOF file.
命令
|
命令 |
释义 |
redis内 |
BGSAVE |
备份 |
redis内 |
bgrewriteaof |
手动重写命令redis内执行 |
redis外 |
redis-cli -p 6379 –aof-rewrite rewrite.aof |
指定AOF文件并将其还原到Redis里 |
redis外 |
redis-cli -p 6379 –aof-rewrite-incremental rewrite.aof |
AOF文件重写 |
redis外 |
redis-cli -p 6379 –aof-load loader.aof |
重新启动Redis服务+加载aof文件 |