0

我有一个庞大的数据库,其中有大约 300 个集合,我必须为每个集合启用分片,是否有命令对来自 mongos 的所有集合启用分片,

假设我的数据库名称是 abc

我像这样为数据库启用了分片

db.runCommand({"enablesharding" : "abc"})

稍后我需要使用

db.runCommand( { shardcollection : "collection name", key : { _id : 1 } } )

foreach 集合,

所以请建议和简单的方法

提前感谢您回复此帖子

4

1 回答 1

3

您可以通过编程方式获取所有集合名称。

db.getCollectionNames().forEach(function(coll_name) {
  db.runCommand( { shardcollection : coll_name, key : { _id : 1 } } )
})
于 2012-10-03T11:19:13.107 回答