如何在 mongodb shell 中查看分片键?
Posted
技术标签:
【中文标题】如何在 mongodb shell 中查看分片键?【英文标题】:How to view sharding keys in mongodb shell? 【发布时间】:2012-04-16 05:50:06 【问题描述】:这可能是一个虚拟问题,但我在所有在线文档中都找不到任何线索。
对于已经搭建好的 mongodb 集群,我怎样才能找到给定的collecton使用了哪个sharding key(s)?
【问题讨论】:
【参考方案1】:只需使用正常的状态命令即可。
sh.status()
从我的 shell 复制的输出以供参考
databases:
"_id" : "Test1", "primary" : "atlas-<hidden>", "partitioned" : true, "version" : "uuid" : UUID("<hidden>"), "lastMod" : 1
Test1.TestCollection
shard key: "location" : 1, "userid" : 1
unique: false
balancing: true
chunks:
atlas-<hidden> 172
在数据库部分下,您将看到完整的详细信息。
【讨论】:
【参考方案2】:您可以登录到集群上的任何“mongos”实例(或配置服务器实例)并查询集合集合。
use config
db.collections.find()
您也可以从任何驱动程序执行此操作,因为它就像运行普通查询一样。此集合存储有关集群中所有分片集合的信息以及它们在哪些键上分片。
【讨论】:
【参考方案3】:如Sharding Administration Docs 中所述,您可以使用db.printShardingStatus()
查看此信息。
对于分片集合,它将打印键模式。
【讨论】:
以上是关于如何在 mongodb shell 中查看分片键?的主要内容,如果未能解决你的问题,请参考以下文章