MongoDB

关注公众号 jb51net

关闭
首页 > 数据库 > MongoDB > mongodb rs.stauts()命令参数

mongodb 中rs.stauts()命令参数解析

作者:香吧香

MongoDB的rs.status()命令是查看副本集状态的重要工具,它可以展示副本集中各个成员的角色、健康状态、同步进度等关键信息,本文介绍mongodb 中rs.stauts()命令参数解析,感兴趣的朋友跟随小编一起看看吧

rs.status()命令用于获取MongoDB副本集的状态信息。它提供了关于副本集中各个节点的详细信息,包括节点的健康状况、角色、选举状态等。

  以下是查看一个mongo集群状态返回的参数:

rs0:PRIMARY> rs.status()
{
        "set" : "rs0",
        "date" : ISODate("2024-09-14T06:44:36.882Z"),
        "myState" : 1,
        "term" : NumberLong(510),
        "syncingTo" : "",
        "syncSourceHost" : "",
        "syncSourceId" : -1,
        "heartbeatIntervalMillis" : NumberLong(2000),
        "majorityVoteCount" : 2,
        "writeMajorityCount" : 2,
        "optimes" : {
                "lastCommittedOpTime" : {
                        "ts" : Timestamp(0, 0),
                        "t" : NumberLong(-1)
                },
                "lastCommittedWallTime" : ISODate("1970-01-01T00:00:00Z"),
                "appliedOpTime" : {
                        "ts" : Timestamp(1726296270, 1),
                        "t" : NumberLong(510)
                },
                "durableOpTime" : {
                        "ts" : Timestamp(1726296270, 1),
                        "t" : NumberLong(510)
                },
                "lastAppliedWallTime" : ISODate("2024-09-14T06:44:30.859Z"),
                "lastDurableWallTime" : ISODate("2024-09-14T06:44:30.859Z")
        },
        "lastStableRecoveryTimestamp" : Timestamp(1725300368, 3),
        "lastStableCheckpointTimestamp" : Timestamp(1725300368, 3),
        "electionCandidateMetrics" : {
                "lastElectionReason" : "electionTimeout",
                "lastElectionDate" : ISODate("2024-09-14T06:28:20.630Z"),
                "electionTerm" : NumberLong(510),
                "lastCommittedOpTimeAtElection" : {
                        "ts" : Timestamp(0, 0),
                        "t" : NumberLong(-1)
                },
                "lastSeenOpTimeAtElection" : {
                        "ts" : Timestamp(1726284227, 1),
                        "t" : NumberLong(509)
                },
                "numVotesNeeded" : 2,
                "priorityAtElection" : 2,
                "electionTimeoutMillis" : NumberLong(10000),
                "numCatchUpOps" : NumberLong(0),
                "newTermStartDate" : ISODate("2024-09-14T06:28:20.830Z")
        },
        "members" : [
                {
                        "_id" : 0,
                        "name" : "mongo1:27017",
                        "health" : 1,
                        "state" : 9,
                        "stateStr" : "ROLLBACK",
                        "uptime" : 987,
                        "optime" : {
                                "ts" : Timestamp(1726197065, 1),
                                "t" : NumberLong(505)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1726197065, 1),
                                "t" : NumberLong(505)
                        },
                        "optimeDate" : ISODate("2024-09-13T03:11:05Z"),
                        "optimeDurableDate" : ISODate("2024-09-13T03:11:05Z"),
                        "lastHeartbeat" : ISODate("2024-09-14T06:44:35.841Z"),
                        "lastHeartbeatRecv" : ISODate("2024-09-14T06:44:36.665Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "mongo2:27017",
                        "syncSourceHost" : "mongo2:27017",
                        "syncSourceId" : 1,
                        "infoMessage" : "",
                        "configVersion" : 1950478
                },
                {
                        "_id" : 1,
                        "name" : "mongo2:27017",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 990,
                        "optime" : {
                                "ts" : Timestamp(1726296270, 1),
                                "t" : NumberLong(510)
                        },
                        "optimeDate" : ISODate("2024-09-14T06:44:30Z"),
                        "syncingTo" : "",
                        "syncSourceHost" : "",
                        "syncSourceId" : -1,
                        "infoMessage" : "",
                        "electionTime" : Timestamp(1726295300, 1),
                        "electionDate" : ISODate("2024-09-14T06:28:20Z"),
                        "configVersion" : 1950478,
                        "self" : true,
                        "lastHeartbeatMessage" : ""
                },
                {
                        "_id" : 2,
                        "name" : "mongo3:27017",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 987,
                        "optime" : {
                                "ts" : Timestamp(1726197065, 1),
                                "t" : NumberLong(505)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1726197065, 1),
                                "t" : NumberLong(505)
                        },
                        "optimeDate" : ISODate("2024-09-13T03:11:05Z"),
                        "optimeDurableDate" : ISODate("2024-09-13T03:11:05Z"),
                        "lastHeartbeat" : ISODate("2024-09-14T06:44:34.930Z"),
                        "lastHeartbeatRecv" : ISODate("1970-01-01T00:00:00Z"),
                        "pingMs" : NumberLong(1),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "",
                        "syncSourceHost" : "",
                        "syncSourceId" : -1,
                        "infoMessage" : "",
                        "configVersion" : 1829326
                }
        ],
        "ok" : 1,
        "$clusterTime" : {
                "clusterTime" : Timestamp(1726296270, 1),
                "signature" : {
                        "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                        "keyId" : NumberLong(0)
                }
        },
        "operationTime" : Timestamp(1726296270, 1)
}
rs0:PRIMARY>

以下是rs.status()响应字段的意义及其对应值的整理:

字段意义示例值
set副本集的名称"rs0"
date响应生成的时间ISODate("2024-09-14T06:44:36Z")
myState当前节点的状态(1: PRIMARY, 2: SECONDARY, 3: RECOVERING等):

常见的状态包括:

  • PRIMARY (1): 当前节点是主节点,负责处理所有写入操作。
  • SECONDARY (2): 当前节点是从节点,复制主节点的数据并提供读取服务。
  • ARBITER (7): 当前节点是仲裁者,不存储数据,仅参与选举过程。
  • OTHER (8): 当前节点的状态不属于上述任何一种,通常是由于配置或网络问题。
  • RECOVERING (9): 当前节点正在恢复中,通常是从不健康状态恢复。
  • DOWN (10): 当前节点不可用,可能是由于网络问题或故障。
  • STARTUP (11): 当前节点正在启动,尚未完成初始化。
  • STARTUP2 (12): 当前节点在启动的第二阶段,正在进行数据同步。
  • UNKNOWN (13): 当前节点的状态未知,可能是由于网络分区或其他问题。
1
term当前选举周期510
lastElectionReason最近一次选举的原因"electionTimeout"
members副本集成员的详细信息数组,包含各个节点的信息
health节点的健康状态(1: 健康, 0: 不健康)1
stateStr节点的状态描述(如 PRIMARY, SECONDARY, ROLLBACK等)"SECONDARY"
uptime节点的运行时间(秒)987
optime最近一次操作的时间戳Timestamp(1726197065, 1)
optimeDurable最近一次持久化操作的时间戳Timestamp(1726197065, 1)
optimeDate最近一次操作的日期ISODate("2024-09-13T03:11:05Z")
optimeDurableDate最近一次持久化操作的日期ISODate("2024-09-13T03:11:05Z")
lastHeartbeat最近一次心跳信号的时间ISODate("2024-09-14T06:44:34.930Z")
lastHeartbeatRecv最近一次接收到心跳信号的时间ISODate("1970-01-01T00:00:00Z")
pingMs节点的延迟(毫秒)NumberLong(1)
lastHeartbeatMessage最近一次心跳的消息""
syncingTo当前节点正在同步的目标节点""
syncSourceHost当前节点的同步源主机""
syncSourceId当前节点的同步源ID-1
infoMessage额外的信息消息""
configVersion配置版本号1829326
$clusterTime集群时间信息包含 clusterTime 和 signature
operationTime最近一次操作的时间Timestamp(1726296270, 1)

使用场景

到此这篇关于mongodb 中rs.stauts()命令参数解析的文章就介绍到这了,更多相关mongodb rs.stauts()命令参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文