角色

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

提供有关 Redis 实例在复制上下文中的角色的信息,如果该实例当前是master,slavesentinel.该命令还返回有关复制状态(如果角色是 master 或 slave)或受监控的主名称列表(如果角色是 sentinel)的其他信息。

输出格式

该命令返回一个元素数组。第一个元素是 实例,作为以下三个字符串之一:

  • “master”
  • “奴隶”
  • “哨兵”

数组的其他元素取决于角色。

主输出

ROLE在 master 实例中调用:

1) "master"
2) (integer) 3129659
3) 1) 1) "127.0.0.1"
      2) "9001"
      3) "3129242"
   2) 1) "127.0.0.1"
      2) "9002"
      3) "3129543"

主输出由以下部分组成:

  1. 字符串master.
  2. 当前主复制偏移量,这是主服务器和副本服务器共享的偏移量,用于了解在部分重新同步中,副本需要获取的复制流部分才能继续。
  3. 一个由三个元素组成的数组,数组表示连接的副本。每个子数组都包含副本 IP、端口和最后确认的复制偏移量。

副本上的命令输出

ROLE在副本实例中调用:

1) "slave"
2) "127.0.0.1"
3) (integer) 9000
4) "connected"
5) (integer) 3167038

副本输出由以下部分组成:

  1. 字符串slave,因为向后兼容性(请参阅本页末尾的注释)。
  2. 主服务器的 IP。
  3. 主服务器的端口号。
  4. 从 master 的角度来看,复制的状态可以是connect(实例需要连接到其 master)、connecting(主从连接正在进行中),sync(主副本和副本正在尝试执行同步)、connected(副本处于联机状态)。
  5. 到目前为止从副本接收的数据量(以主复制偏移量表示)。

Sentinel 输出

Sentinel 输出示例:

1) "sentinel"
2) 1) "resque-master"
   2) "html-fragments-master"
   3) "stats-master"
   4) "metadata-master"

sentinel 输出由以下部分组成:

  1. 字符串sentinel.
  2. 此 Sentinel 实例监控的 master 名称数组。

例子

角色

关于本手册页中使用的单词 slave 的说明:从 Redis 5 开始,如果不是为了向后兼容,Redis 项目不再使用单词 slave。不幸的是,在这个命令中,slave 这个词是协议的一部分,所以只有当这个 API 被自然弃用时,我们才能删除此类事件。

RESP2/RESP3 回复

数组回复:其中第一个元素是以下元素之一master,slavesentinel,其他元素是特定于角色的,如上所示。
为本页评分
返回顶部 ↑