sh.status()

在本页面

Definition

sh.status()方法具有以下参数:

Parameter Type Description
verbose boolean 可选的。确定详细程度。


如果true,则方法显示:
即使您有 20 个或更多块,每个分片上的块分布的完整详细信息,以及每个分片上的块数。
活动的 mongos 实例的详细信息。
如果false,则方法显示:
仅当少于 20 个块时,各个分片中的块分布的完整详细信息。如果您有 20 个或更多块,则该方法将返回too many chunks to print ...消息,仅显示每个分片上的块数。
只有活动 mongos 实例的版本和数量
默认详细值为false

Output Examples

Sharding Version部分显示有关config database的信息:

--- Sharding Status ---
  sharding version: {
   "_id" : <num>,
   "minCompatibleVersion" : <num>,
   "currentVersion" : <num>,
   "clusterId" : <ObjectId>
}

Shards部分列出了有关分片的信息。对于每个分片,此部分将显示名称,主机和关联的标签(如果有)。

shards:
 { "_id" : <shard name1>, "host" : <string>, "tags" : [ <string> ... ], "state" : <num> }
 { "_id" : <shard name2>, "host" : <string>, "tags" : [ <string> ... ], "state" : <num> }
 ...

默认情况下,“ 活动的 mongos 实例”部分显示有关过去 60 秒钟内处于活动状态的mongos实例的版本和数量的信息:

active mongoses:
  <version> : <num>

如果在verbose参数为 true 的情况下运行该方法,则活动的 mongos 实例部分将显示其他信息:

active mongoses:
{  "_id" : "<hostname:port>",  "advisoryHostFQDNs" : [ "<name>" ],  "mongoVersion" : <string>,  "ping" : <ISODate>,  "up" : <long>,  "waiting" : <boolean> }

Autosplit显示有关是否启用自动拆分的信息:

autosplit:
  Currently enabled: <yes|no>

Balancer部分列出了有关balancer状态的信息。这可以洞悉当前的平衡器操作,并且在对不平衡的分片群集进行故障排除时很有用。

balancer:
      Currently enabled:  yes
      Currently running:  yes
      Collections with active migrations:
          chat.messages started at Mon Nov 05 2018 15:16:45 GMT-0500 (EST)
      Failed balancer rounds in last 5 attempts:  0
      Migration Results for the last 24 hours:
          1 : Success

Databases部分列出了有关数据库的信息。对于每个数据库,该部分显示名称,数据库是否启用了分片以及数据库的primary shard

databases:
 {  "_id" : <dbname1>,
    "partitioned" : <boolean>,
    "primary" : <string>
 }
 {  "_id" : <dbname2>,
    "partitioned" : <boolean>,
    "primary" : <string>
 }
 ...

Sharded Collection部分提供有关分片集合的分片详细信息。对于每个分片集合,此部分显示分片密钥,每个分片的块数,分片[1]上的块分布以及分片密钥范围的标签信息(如果有)。

<dbname>.<collection>
   shard key: { <shard key> : <1 or hashed> }
   unique: <boolean>
   balancing: <boolean>
   chunks:
      <shard name1> <number of chunks>
      <shard name2> <number of chunks>
      ...
   { <shard key>: <min range1> } -->> { <shard key> : <max range1> } on : <shard name> <last modified timestamp>
   { <shard key>: <min range2> } -->> { <shard key> : <max range2> } on : <shard name> <last modified timestamp>
   ...
   tag: <tag1>  { <shard key> : <min range1> } -->> { <shard key> : <max range1> }
   ...

Output Fields

Sharding Version

个活动 mongos 实例

3.2 版中的新功能。

如果verbosetrue,则为每个活动的mongos实例返回:

active mongoses:

{  "_id" : "<hostname:port>",  "advisoryHostFQDNs" : [ "<name>" ],  "mongoVersion" : <string>,  "ping" : <ISODate>,  "up" : <long>,  "waiting" : <boolean> }
...

Autosplit

Shards

state显示:

Balancer

3.0.0 版中的新功能:sh.status()添加了balancer字段。

migration-results-for-the-last-24-hours包括全部迁移,包括不是由平衡器启动的迁移。

Databases

Sharded Collection

3.2 版中的新功能。

3.2 版中的新功能。

[1] *(12)*如果块总数少于 20,则默认情况下,分片集合部分将显示块信息。要在有 20 个或更多块时显示该信息,请使用verbose参数调用sh.status()方法设置为true,即sh.status(true)
首页