Redis 持久化 —— AOF
本章主题
关键词
Redis 持久化
使用 RDB 持久化有一个风险,它可能会造成最新数据丢失的风险。因为 RDB 的持久化有一定的时间间隔,在这个时间段内如果 Redis 服务意外终止的话,就会造成最新的数据全部丢失。
可能会操作 Redis 服务意外终止的条件:
- 安装 Redis 的机器停止运行,蓝屏或者系统崩溃;
- 安装 Redis 的机器出现电源故障,例如突然断电;
- 使用 kill -9 Redis_PID 等。
那么如何解决以上的这些问题呢?Redis 为我们提供了另一种持久化的方案——AOF。
简介
AOF(Append Only File)中文是附加到文件,顾名思义 AOF 可以把 Redis 每个键值对操作都记录到文件(appendonly.aof)中。
持久化查询和设置
1)查询 AOF 启动状态
使用 config get appendonly 命令
其中,第一行为 AOF 文件的名称,而最后一行表示 AOF 启动的状态,yes 表示已启动,no 表示未启动。
2)开启 AOF 持久化
Redis 默认是关闭 AOF 持久化的,想要开启 AOF 持久化,有以下两种方式:
- 通过命令行的方式;
- 通过修改配置文件的方式(redis.conf)。
下面分别来看以上两种方式的实现。
① 命令行启动 AOF
命令行启动 AOF,使用 config set appendonly yes 命令,如下图所示:
命令行启动 AOF 的优缺点:命令行启动优点是无需重启 Redis 服务,缺点是如果 Redis 服务重启,则之前使用命令行设置的配置就会失效。
② 配置文件启动 AOF
Redis 的配置文件在它的根路径下的 redis.conf 文件中,获取 Redis 的根目录可以使用命令 config get dir 获取,如下图所示: