定义
sh.enableSharding(database, primaryShard)显式创建数据库。使用
mongosh方法sh.shardCollection()对数据库上的集合分片。mongosh方法sh.enableSharding()封装了enableSharding命令。重要
mongosh 方法
本页介绍了
mongosh方法。这不是数据库命令或特定语言驱动程序(例如 Node.js)的文档。有关数据库命令,请参阅
enableSharding命令。如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。
兼容性
此方法可用于以下环境中托管的部署:
- MongoDB Atlas :用于在云中部署MongoDB 的完全托管服务
MongoDB Enterprise:基于订阅、自我管理的 MongoDB 版本
MongoDB Community:源代码可用、免费使用且可自行管理的 MongoDB 版本
语法
sh.enableSharding() 的形式如下:
sh.enableSharding( <database>, <primary shard> // Optional. )
Parameter
sh.enableSharding() 方法采用以下参数:
行为
写关注
mongos 将 "majority" 用于 enableSharding 命令及其助手 sh.enableSharding()。
主分片
通常,您不需要在命令中指定primaryShard。相反,允许负载均衡器选择主分片。
但是,如果您确实为数据库指定了主分片,并且该数据库已经启用了使用其他主分片的分片功能,则该操作会返回错误,并且数据库的主分片将保持不变。要更改数据库的主分片,请改用 movePrimary 命令。
例子
下面的示例从 mongos 运行,明确创建了 shardTest 数据库:
sh.enableSharding("shardTest")
要验证,请运行 sh.status()。