首页 > 数据库 >mongodb 中rs.stauts()命令参数解析

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

时间:2024-09-23 11:22:20浏览次数:9  
标签:rs mongodb 09 NumberLong 2024 ISODate stauts Timestamp 节点


  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)

使用场景

  • 故障排查: 当副本集出现问题时,使用rs.status()可以快速定位故障节点。
  • 性能监控: 定期检查副本集状态,以确保所有节点正常运行并及时发现性能瓶颈。
  • 维护操作: 在进行维护或升级操作前,确认副本集的健康状况。
  • 选举监控: 监控选举过程,确保主节点的选举和切换正常进行。

 



标签:rs,mongodb,09,NumberLong,2024,ISODate,stauts,Timestamp,节点
From: https://blog.51cto.com/u_15535797/12087936

相关文章

  • mongo 副本集rs 理解和使用小结
    在MongoDB中,rs(通常指的是“replicaset”的缩写)是复制集(ReplicaSet)的标识符或在使用时的一种常见前缀,尤其是在命令行工具和脚本中引用复制集时。复制集是MongoDB用来实现数据冗余和高可用性的一个核心组件。复制集(ReplicaSet)的作用:数据冗余:复制集在多个服务器上维护相同数据的......
  • Spring Cloud Gateway CORS 方案
    SpringCloudGatewayCORS(跨域资源共享)方案主要涉及在网关层面配置CORS策略,以允许前端应用跨域访问后端服务。以下是一个详细的CORS配置方案,包括配置文件(如application.yml)和Java代码配置两种方式。一、配置文件方式(application.yml)在SpringCloudGateway项目中,通常可以通过编辑a......
  • CentOS7使用yum时File contains no section headers. file: file:///etc/yum.repos.d/
    CentOS7使用yum时Filecontainsnosectionheaders.file:file:///etc/yum.repos.d/CentOS-Base.repo,line:1'--2024-09-2221:08:17--http://mirrors.aliyun.com/repo/Centos-7.repo\n'安装好CenOS7后,自带的yum不能直接使用,使用会出现如下问题:原因是没有配置yum源,修改/e......
  • [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\partmgr\Parameters] "SanP
    WindowsRegistryEditorVersion5.00;关闭windowstogo特性[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control]"PortableOperatingSystem"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\partmgr\Parameters]"SanPolicy"=......
  • Metric3D v2: A Versatile Monocular Geometric Foundation Model for Zero-shot Metr
    paperMetric3Dv2:AVersatileMonocularGeometricFoundationModelforZero-shotMetricDepthandSurfaceNormalEstimation作者MuHu1∗,WeiYin2∗†,ChiZhang3,ZhipengCai4,XiaoxiaoLong5‡,HaoChen6,KaixuanWang1,GangYu7,ChunhuaShen......
  • "放开那代码让我来!"——Cursor帮你写代码的奇妙之旅
    让我们开门见山:编程很酷,但也很折磨人。那些长时间盯着屏幕,debug无休止的日子,只有程序员懂得它的酸爽。而就在这个编程焦虑的世界中,Cursor横空出世,带着一系列魔法功能,如同你手中的一根智能魔杖,让写代码变得像煮速冻面一样简单。Cursor,一款基于AI的编程助手,号称可以从自然语言生成......
  • Cursor 使用技巧指南
    引言在过去的1周里,我使用Cursor完成了1个chrome插件、1个内部查询系统的开发,这些经验让我总结出了5个使用Cursor的技巧,这些技巧不仅能提升你的使用体验,还能帮你实现免费使用最强代码AI。并别忘了点赞和收藏。CursorAi开发的AI浏览器侧边栏完整源码地址(0积分下载):https:/......
  • MongoDB副本集故障切换期间的回滚
    每当复制集在选举中替换主节点时,旧主节点可能包含未复制到辅助节点的文档。在这种情况下,旧的主节点会回滚这些写入内容。在回滚过程中,节点将处于ROLLBACK状态。处于ROLLBACK状态的节点有资格在选举中投票。 从4.2版开始,当节点进入ROLLBACK状态时,MongoDB会杀死所有正在......
  • WPF Combobox ObjectDataProvider MethodName ObjectType ObjectDataProvider.Metho
    <Window.Resources><ObjectDataProviderx:Key="kindEnum"MethodName="GetValues"ObjectType="{x:Typesys:Enum}"><ObjectDataProvider.MethodParameters><x:Type......
  • ERROR StatusLogger NoSql contains an invalid element or attribute "MongoDb"
    报错:ERRORStatusLoggerNoSqlcontainsaninvalidelementorattribute"MongoDb"ERRORStatusLoggerNoSQLprovidernotspecifiedforappender[databaseAppender].ERRORStatusLoggerNullobjectreturnedforNoSqlinAppenders.ERRORStatusLoggerUnab......