文档菜单
文档首页
/
MongoDB 手册
/ / /

enableSharding

在本页

  • 定义
  • 兼容性
  • 语法
  • 命令字段
  • 行为
  • 示例
enableSharding

注意

已更改在版本6.0.

从MongoDB 6.0版本开始,此命令不再需要用于分片一个集合。

命令enableSharding显式创建一个数据库。

提示

mongosh中,此命令也可以通过sh.enableSharding()辅助方法执行.

辅助方法对mongosh用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。在不需要方便性或需要额外的返回字段的情况下,请使用数据库命令。

此命令在以下环境中可用

  • MongoDB Atlas:云中MongoDB部署的完全托管服务

重要

此命令不支持在无服务器实例上使用。有关更多信息,请参阅不受支持的命令。

该命令的语法如下

  • 推荐。指定要创建的数据库

    db.adminCommand(
    {
    enableSharding: "<database name>"
    }
    )
  • 可选地,您可以在命令中包含主分片指定,尽管这不推荐

    db.adminCommand(
    {
    enableSharding: "<database name>",
    primaryShard: "<shard name>"
    }
    )

您只能在从 mongos 实例中运行 enableSharding 命令到 admin 数据库。

命令包含以下字段

字段
类型
描述
字符串

您想使用的数据库。如果不存在,则创建数据库。

字符串

可选。数据库的主分片。它是数据库中所有未分片集合的默认分片。

警告:通常,您不应该指定主分片。让集群选择主分片。

该命令返回包含操作状态的文档。

mongos 使用 "majority" 作为 enableSharding 命令及其辅助函数 sh.enableSharding() 的写入关注。

通常,您不需要在命令中指定 primaryShard。相反,允许平衡器选择主分片。

但是,如果您在命令中指定了 primaryShard 并为 数据库 设置了不同的主分片,则操作将返回错误,并且数据库的主分片将保持不变。要更改数据库的主分片,请使用 movePrimary

以下命令,从 mongos 运行,创建 shardTest 数据库

db.adminCommand( { enableSharding: "shardTest" } )

提示

另请参阅

返回

configureQueryAnalyzer