分片集群手册(查看分片配置)

1. 查看分片配置
1.1 列举使用分片的数据库
为了列举使用分片的数据库,需要查询Config数据库。如果partitioned域值为true,则这个库使用了分片技术。
连接一个mongos实例,运行命令获取使用分片功能的数据库:
use config
db.databases.find( { "partitioned" : true} )
例如:使用以下命令返回集群中的所有数据库
use config
db.databases.find()
如果返回结果:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "mydb", "partitioned" : true, "primary" : "firstset" }
{ "_id" : "test", "partitioned" : false, "primary" : "secondset" }
显示只有mydb使用了分片。
1.2 列举所有的分片
为了列举当前集合的所有分片,使用listShards命令:
use admin
db.runCommand( { listShards : 1 })
返回结果:
{
        "shards" : [
                {
                        "_id" : "firstset",
                        "host" : "firstset/mongo01:10001,mongo01:10002,mongo01:10003"
                },
                {
                        "_id" : "secondset",
                        "host" : "secondset/mongo01:30001,mongo01:30002,mongo01:30003"
                }
        ],
        "ok" : 1
}
1.3 查看集群的详细信息
为了查看集群的详细信息,可以使用db.printShardingStatus()或者sh.status()。所有的方法返回同样的结果。
例如,使用sh.status()查看信息:
--- Sharding Status --- 
  sharding version: {
        "_id" : 1,
        "version" : 4,
        "minCompatibleVersion" : 4,
        "currentVersion" : 5,
        "clusterId" : ObjectId("535a2dab0063b308757e1b70")
}
  shards:
        {  "_id" : "firstset",  "host" : "firstset/mongo01:10001,mongo01:10002,mongo01:10003" }
        {  "_id" : "secondset",  "host" : "secondset/mongo01:30001,mongo01:30002,mongo01:30003" }
  databases:
        {  "_id" : "admin",  "partitioned" : false,  "primary" : "config" }
        {  "_id" : "mydb",  "partitioned" : true,  "primary" : "firstset" }
                mydb.test_collection
                        shard key: { "name" : 1 }
                        chunks:
                                secondset       6
                                firstset        6
                        { "name" : { "$minKey" : 1 } } -->> { "name" : "cat" } on : secondset Timestamp(2, 0) 
                        { "name" : "cat" } -->> { "name" : "cow" } on : secondset Timestamp(3, 0) 
                        { "name" : "cow" } -->> { "name" : "dog" } on : secondset Timestamp(4, 0) 
                        { "name" : "dog" } -->> { "name" : "dragon" } on : secondset Timestamp(5, 0) 
                        { "name" : "dragon" } -->> { "name" : "elephant" } on : secondset Timestamp(6, 0) 
                        { "name" : "elephant" } -->> { "name" : "horse" } on : secondset Timestamp(7, 0) 
                        { "name" : "horse" } -->> { "name" : "lion" } on : firstset Timestamp(7, 1) 
                        { "name" : "lion" } -->> { "name" : "pig" } on : firstset Timestamp(1, 7) 
                        { "name" : "pig" } -->> { "name" : "rabbit" } on : firstset Timestamp(1, 8) 
                        { "name" : "rabbit" } -->> { "name" : "snake" } on : firstset Timestamp(1, 9) 
                        { "name" : "snake" } -->> { "name" : "tiger" } on : firstset Timestamp(1, 10) 
                        { "name" : "tiger" } -->> { "name" : { "$maxKey" : 1 } } on : firstset Timestamp(1, 11) 
        {  "_id" : "test",  "partitioned" : false,  "primary" : "secondset" }

sharding version展示了分片元数据的版本号。
shards展示了在集群中被作为分片的mongod实例。
databases展示了集群中所有的数据库,包括没有使用分片功能的库。
chunks信息展示了mydb库的每个分片上有多少个块和每个块的范围。


转载于:https://my.oschina.net/u/1449160/blog/227436

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值