Docs 菜单

Docs 主页开发应用程序MongoDB Manual

sh.moveChunk()

在此页面上

  • 定义
  • 例子
sh.moveChunk(namespace, query, destination)

将包含query指定的文档的数据段移动到{ destination分片。 sh.moveChunk()提供了moveChunk数据库命令的包装器。

重要

在大多数情况下,允许负载均衡器自动迁移数据段,并避免直接调用sh.moveChunk()

重要

mongosh 方法

本页介绍了mongosh方法。这不是数据库命令或特定语言驱动程序(例如 Node.js)的文档。

有关数据库命令,请参阅 moveChunk 命令。

对于 MongoDB API 驱动程序,请参阅特定语言的MongoDB 驱动程序文档。

对于传统 mongo Shell 文档,请参阅相应 MongoDB Server 版本的文档:

mongo shell v4.4

sh.moveChunk() 采用以下参数:

范围
类型
说明
namespace
字符串
包含要迁移的数据块的分片collection的命名空间
query
文档
选择要移动的数据块的分片键的等值匹配。
destination
字符串
要移动的分片的名称。

默认,如果数据块中的文档数量大于1 ,则 MongoDB 无法移动该数据块。 3乘以配置的数据块大小除以平均文档大小所得的结果。 moveChunk命令可以指定forceJumbo选项,以允许手动迁移太大而无法移动的数据块,无论带或不带jumbo标签。有关详细信息,请参阅moveChunk命令。

提示

另请参阅:

给定records数据库中的peoplecollection,以下操作查找包含zipcode字段设置为53187的文档的数据块,然后将该数据块移动到名为shard0019的分片:

sh.moveChunk("records.people", { zipcode: "53187" }, "shard0019")
← sh.isBalancerRunning()

在此页面上