On this page
shardingState
在本页面
shardingState
- shardingState是一个 Management 命令,报告mongod是否是sharded cluster的成员。
shardingState具有以下原型形式:
{ shardingState: 1 }
要运行该命令,必须在admin
数据库上运行。参见db.adminCommand()。
Behavior
为了使shardingState检测到mongod是分片群集的成员,mongod必须满足以下条件:
如果shardingState检测到mongod是分片群集的成员,则shardingState返回类似于以下原型的文档:
{
"enabled" : true,
"configServer" : "<configdb-string>",
"shardName" : "<string>",
"shardHost" : "string:",
"versions" : {
"<database>.<collection>" : Timestamp(<...>),
"<database>.<collection>" : Timestamp(<...>)
},
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1510716515, 1),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp(1510716515, 1)
}
否则,shardingState将返回以下文档:
{
"enabled" : false,
"ok" : 1,
"$clusterTime" : {
"clusterTime" : Timestamp(1510716515, 1),
"signature" : {
"hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="),
"keyId" : NumberLong("6488045157173166092")
}
},
"operationTime" : Timestamp(1510716515, 1)
}
与shardingState一起使用时,shardingState的响应为:
{
"enabled" : false,
"ok" : 1,
"operationTime" : Timestamp(1510767613, 1),
"$gleStats" : {
"lastOpTime" : Timestamp(0, 0),
"electionId" : ObjectId("7fffffff0000000000000001")
},
"$clusterTime" : {
"clusterTime" : Timestamp(1510767613, 1),
"signature" : {
"hash" : BinData(0,"IwBZ4SZjIMI5NdM62NObV/R31GM="),
"keyId" : NumberLong("6488693018630029321")
}
}
}
Note
mongos个实例不提供shardingState。
Warning
此命令获得对受影响的数据库的写锁定,并将阻止其他操作,直到完成为止;但是,该操作通常是短暂的。