BGREWRITEAOF

语法
BGREWRITEAOF
可用版本
Redis 开源版 1.0.0
时间复杂度
O(1)
ACL 分类
@admin, @slow, @dangerous,

指示 Redis 启动一个 Append Only File 重写过程。重写将创建当前 Append Only File 的一个小型优化版本。

如果 BGREWRITEAOF 失败,由于旧的 AOF 文件未被触动,因此不会丢失数据。

只有当没有其他后台进程正在进行持久化时,Redis 才会触发重写。

具体来说

  • 如果一个 Redis 子进程正在磁盘上创建快照,AOF 重写会被安排,但在生成 RDB 文件的保存子进程终止之前不会启动。在这种情况下,BGREWRITEAOF 仍然会返回一个积极的状态回复,但会附带适当的消息。您可以通过查看 Redis 2.6 或更高版本的 INFO 命令来检查 AOF 重写是否已安排。
  • 如果一个 AOF 重写过程已经在进行中,该命令会返回错误,并且不会为稍后时间安排 AOF 重写。
  • 如果 AOF 重写可以开始,但启动尝试失败(例如,由于创建子进程时出错),则会向调用者返回错误。

从 Redis 2.4 开始,AOF 重写由 Redis 自动触发,但 BGREWRITEAOF 命令可用于随时触发重写。

有关详细信息,请参阅持久化文档

RESP2 回复

简单字符串回复:一个简单的字符串回复,表示在调用成功执行时,重写已开始或即将尽快开始。

在某些情况下,该命令可能会回复错误,如上文所述。

RESP3 回复

批量字符串回复:一个简单的字符串回复,表示在调用成功执行时,重写已开始或即将尽快开始。

在某些情况下,该命令可能会回复错误,如上文所述。


评价此页面
回到顶部 ↑