添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
“文档” 菜单

replSetGetStatus

replSetGetStatus

replSetGetStatus 命令会从处理该命令的服务器的角度返回副本集的状态。 replSetGetStatus 必须在 管理员数据库上运行。

mongod 实例必须为副本集节点才能使 replSetGetStatus 成功返回。

此命令提供的数据源自副本集其他成员发送到服务器的心跳中包含的数据。由于心跳的频率,这些数据可能会过时几秒钟。

提示

mongosh 中,该命令也可通过 rs.status() 辅助方法运行。

辅助方法对 mongosh 用户来说很方便,但它们返回的信息级别可能与数据库命令不同。如果不追求方便或需要额外的返回字段,请使用数据库命令。

该命令具有以下语法:

db.adminCommand(
{
replSetGetStatus: 1
}
)

如果在成员 初始同步 期间对成员运行 replSetGetStatus mongosh 帮助程序 rs.status() (即 STARTUP2 状态),则命令返回 replSetGetStatus.initialSyncStatus 指标。

成员完成初始同步并过渡到另一种状态后, replSetGetStatus.initialSyncStatus 指标将不再可用。

replSetGetStatus 命令会返回一个包含以下字段的文件:

replSetGetStatus.set

set 值是副本集的名称,在 replSetName 设置中配置。这与 rs.conf() 中的 _id 值相同。

replSetGetStatus.date

ISODate 格式的日期和时间,其中包含基于处理 replSetGetStatus 命令的服务器的当前时间。将此值与 replSetGetStatus.members[n].lastHeartbeat 的值进行比较,以确定此服务器与副本集其他节点之间的运行延迟。

replSetGetStatus.myState

介于 0 10 之间的整数,表示当前成员的 副本状态

replSetGetStatus.term

副本集的选举次数,这是该副本集成员所知道的。分布式共识算法使用 term 来确保正确性。

replSetGetStatus.syncSourceHost

syncSourceHost 字段保存此实例同步的节点的主机名。

如果此实例为主节点,则 syncSourceHost 为空字符串,且 syncSourceId -1

replSetGetStatus.syncSourceId

syncSourceId 字段保存此实例与之同步的节点的 replSetGetStatus.members[n]._id

如果此实例为主节点,则 syncSourceHost 为空字符串,且 syncSourceId -1

replSetGetStatus.heartbeatIntervalMillis

心跳频率(以毫秒为单位)。

replSetGetStatus.majorityVoteCount

在选举中选出新的主节点所需的多数票数。

replSetGetStatus.writeMajorityCount

需要满足写关注 "majority" 的数据承载投票成员(即非仲裁节点)的数量。写操作只能应用于数据承载成员。

有关 replSetGetStatus.writeMajorityCount 的计算,请参阅 计算写关注 Majority。

replSetGetStatus.votingMembersCount

使用 votes: 1 配置的成员数,包括仲裁节点。

replSetGetStatus.writableVotingMembersCount

使用 votes: