sh.addShard()

在本页面

Definition

  • sh. addShard(* *)

sh.addShard()方法具有以下参数:

ParameterTypeDescription
hoststring副本集名称,主机名和分片副本集至少一个成员的端口。任何其他副本集成员主机名都必须用逗号分隔。例如:

<replica_set>/<hostname><:port>,<hostname><:port>, ...

sh.addShard()方法具有以下原型形式:

sh.addShard("<replica_set>/<hostname><:port>")

Warning

除非您的配置服务器也在localhost上运行,否则不要使用localhost作为主机名。

2.6 版中的新功能:从官方.deb.rpm软件包安装的mongos默认情况下将bind_ip配置设置为127.0.0.1

sh.addShard()方法是addShard命令的帮助程序。 addShard命令具有此帮助程序不可用的其他选项。

Considerations

Balancing

将分片添加到分片群集时,会影响所有现有分片集合的群集中各分片中chunks的平衡。平衡器将开始迁移块,以便群集将达到平衡。有关更多信息,请参见Cluster Balancer

在 2.6 版中进行了更改:块迁移可能会影响磁盘空间。从 MongoDB 2.6 开始,源碎片默认情况下会自动存档迁移的文档。有关详细信息,请参见moveChunk directory

Hidden Members

Important

您不能在提供给sh.addShard()的种子列表中包括hidden member

Example

要添加碎片,请指定副本集的名称和副本集至少一个成员的主机名作为种子。如果指定其他主机名,则所有主机名都必须是同一副本集的成员。

以下示例添加了一个名为repl0的副本集,并指定了副本集的一个成员:

sh.addShard("repl0/mongodb3.example.net:27327")