addShardToZone

在本页面

Definition

Syntax

您只能从mongos实例在admin数据库上运行addShardToZone

addShardToZone命令具有以下语法:

db.adminCommand(
   {
     addShardToZone: <string>,
     zone: <string>
   }
)

Fields

该命令包含以下字段:

Field Type Description
addShardtoZone string zone关联的分片的名称。

zone string 要与shard关联的区域的名称。

mongo shell 提供了辅助方法sh.addShardToZone()

Behavior

您可以将一个区域与多个分片关联,而一个分片可以与多个区域关联。

有关分片群集中区域的更多信息,请参见zone手册页。

Ranges

MongoDB 有效地忽略没有至少一个与之关联的分片键值范围的区域。

要将范围的分片键值范围与区域相关联,请使用updateZoneKeyRange数据库命令或sh.updateZoneKeyRange() Shell 帮助程序。

Security

对于实施access control的分片群集,您必须以具有以下任一特权的用户身份进行身份验证:

内置clusterAdminclusterManager角色具有发布addShardToZone的适当权限。有关更多信息,请参见基于角色的访问控制的文档页面。

Example

以下示例将shard0000与区域JFK关联:

db.adminCommand( { addShardToZone : "shard0000" , zone : "JFK" } )

一个分片可以与多个区域关联。以下示例将LGA关联到shard0000

db.adminCommand( { addShardToZone : "shard0000" , zone : "LGA" } )

shard0000LGA区域和JFK区域关联。在平衡的集群中,MongoDB 将由任一区域覆盖的读取和写入路由到shard0000

首页