*Redis FAILOVER 命令

手动触发主从故障转移。Redis 6.0+ 引入,用于非 Cluster 模式的主从架构。


*语法

FAILOVER [TO host port [FORCE] [ABORT]] [ABORT] [TIMEOUT milliseconds]

*参数说明

参数 类型 必填 说明
TO 标志 指定目标副本
host String 目标副本主机(TO 时必填)
port Integer 目标副本端口(TO 时必填)
FORCE 标志 强制故障转移,不等待数据同步
ABORT 标志 中止正在进行的故障转移
TIMEOUT Integer 超时时间(毫秒)

*返回值

条件 返回值
成功 OK
正在进行 错误提示
中止 OK

*时间复杂度

O(1)

*

*示例

# 手动故障转移到指定副本
> FAILOVER TO 192.168.1.200 6379
OK

# 强制故障转移
> FAILOVER TO 192.168.1.200 6379 FORCE
OK

# 中止故障转移
> FAILOVER ABORT
OK

*常见错误

  1. 目标不是副本:返回错误。

*最佳实践

  1. 主从切换:主节点维护时,手动 FAILOVER 切换到副本。

*FAQ

Q: FAILOVER 和 CLUSTER FAILOVER 有什么区别? A: FAILOVER 用于单机主从模式;CLUSTER FAILOVER 用于 Cluster 模式。