BGREWRITEAOF

语法
BGREWRITEAOF
从以下位置开始可用:
1.0.0
时间复杂度:
O(1)
ACL 类别:
@admin, @slow, @dangerous,

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

如果BGREWRITEAOF失败,则不会丢失任何数据,因为旧的 AOF 将保持不变。

如果还没有背景,则只有 Redis 才会触发重写 进程执行持久性。

具体说来:

  • 如果 Redis 子项正在磁盘上创建快照,则会计划 AOF 重写,但在生成 RDB 文件的保存子项终止之前不会启动。在这种情况下,BGREWRITEAOF仍将返回 positive 状态回复,但带有适当的消息。您可以查看INFO命令从 Redis 2.6 或后续版本开始。
  • 如果 AOF 重写已在进行中,则命令将返回错误,并且不会 AOF 重写将安排在以后的时间。
  • 如果 AOF 重写可以启动,但启动尝试失败(例如,由于创建子进程时出错),则会向调用方返回错误。

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

有关详细信息,请参阅 persistence 文档

RESP2 回复

Simple string reply:一个简单的字符串回复,指示在调用成功执行时尽快开始重写。

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

RESP3 回复

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

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