文档菜单
文档首页
/
MongoDB 手册
/ / /

replSetGetConfig

在本页中

  • 定义
  • 兼容性
  • 语法
  • 命令字段
  • 输出示例
replSetGetConfig

返回一个文档,该文档描述了当前配置副本集

提示

mongosh中,此命令也可以通过rs.conf()辅助方法运行.

辅助方法对mongosh用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。在不需要便利性或需要额外的返回字段的情况下,请使用数据库命令。

此命令在以下环境中托管的部署中可用

  • MongoDB Atlas:云中MongoDB部署的全托管服务

重要

此命令不支持在M0、M2和M5集群中。有关更多信息,请参阅不受支持的命令。

要运行,必须在admin数据库上发出replSetGetConfig命令。该命令具有以下语法

db.adminCommand(
{
replSetGetConfig: 1,
commitmentStatus: <boolean>,
comment: <any>
}
)
字段
类型
描述
replSetGetConfig
any
任何值
布尔型

可选。指定 true 以在输出中包含一个 commitmentStatus 字段。输出字段 commitmentStatus 表示副本集的上次重新配置是否已提交,从而使得副本集可以再次进行重新配置。有关详细信息,请参阅 commitmentStatus 输出字段。

您只能在主节点上运行命令时指定 commitmentStatus: true 选项。如果在副节点上使用 commitmentStatus: true 运行命令,则命令会出错。

注释
any

可选。为该命令附加的用户提供的注释。一旦设置,此注释将出现在以下位置的此命令记录旁边

注释可以是任何有效的 BSON 类型(字符串、整数、对象、数组等)。

mongosh 提供了封装 replSetGetConfig 命令的 rs.conf() 方法

rs.conf();

以下是在主节点上运行带有 commitmentStatus: truereplSetGetConfig 命令的示例输出

{
"config" : {
"_id" : "myRepl",
"version" : 180294,
"term" : 1,
"protocolVersion" : NumberLong(1),
"writeConcernMajorityJournalDefault" : true,
"members" : [
{
"_id" : 0,
"host" : "m1.example.net:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"secondaryDelaySecs" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "m2.example.net:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"secondaryDelaySecs" : NumberLong(0),
"votes" : 1
},
{
"_id" : 2,
"host" : "m3.example.net:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"secondaryDelaySecs" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"catchUpTimeoutMillis" : -1,
"catchUpTakeoverDelayMillis" : 30000,
"getLastErrorModes" : {
},
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
},
"replicaSetId" : ObjectId("5eaa1e9ac4d650aa7817623d")
}
},
"commitmentStatus" : true,
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1588212091, 1),
"signature" : {
"hash" : BinData(0,"veOHa2mOeRTzuR0LKqnzGxWV77k="),
"keyId" : NumberLong("6821298283919441923")
}
},
"operationTime" : Timestamp(1588212091, 1)
}
字段
描述
配置
副本集配置。有关每个配置设置的说明,请参阅 自管理副本集配置。

一个布尔值,表示最新的副本集配置是否已提交;即。

  • 主节点的最新副本集配置已传播到大多数成员。

  • 上次以先前配置对副本集进行的写入操作已在新的配置中majority-committed

如果true,则配置已提交,可以重新配置副本集。要重新配置副本集,请参阅replSetReconfig命令或mongosh方法rs.reconfig()

如果false,则配置未提交,无法重新配置副本集。

ok
一个数字,表示命令是否成功(1)或失败(0)。
operationTime
$clusterTime
在每次对副本集执行命令时返回。有关详细信息,请参阅db.adminCommand Response

提示

另请参阅

返回

replSetFreeze