Docs Menu

sh.moveRange()

sh.moveRange(namespace, toShard, min, max)

バージョン 6.0 で追加。

の範囲をシャード間で範囲を移動します。

重要

mongosh メソッド

このページでは、mongosh メソッドについて説明します。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません

データベースコマンドについては、moveRange コマンドを参照してください。

MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。

このコマンドは、次の環境でホストされている配置で使用できます。

  • MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです

注意

このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

sh.moveRange(namespace, toShard, min, max)

sh.moveRange() メソッドは次のパラメータを取ります。

Parameter
タイプ
説明

namespace

string

移動する範囲のデータベースとコレクションを設定します。

toShard

string

シャードのID を範囲を受信するように設定します。

min

ドキュメント

移動する範囲の最小キー。

max

ドキュメント

移動する範囲の最大キー。

次の例では、以下を含むコレクションを使用しています。

  • 郵便番号を表すシャードキー postal

  • 7000770124 を境界とする範囲。

書き込み範囲を shard02 に移動するには、次のメソッドを実行します。

sh.moveRange(
"contacts.addresses", "shard02",
{ postal: 70007 },
{ postal: 70124 }
)
{
ok: 1,
'$clusterTime': {
clusterTime: Timestamp({ t: 1742507819, i: 42 }),
signature: {
hash: Binary.createFromBase64('AAAAAAAAAAAAAAAAAAAAAAAAAAA=', 0),
keyId: Long('0')
}
},
operationTime: Timestamp({ t: 1742507819, i: 42 })
}