AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

addShard(データベースコマンド)

addShard

シャーディングされたクラスターに シャード レプリカセット を追加します。

Tip

In mongosh, this command can also be run through the sh.addShard() helper method.

Helper methods are convenient for mongosh users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.

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

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

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

注意

このコマンドはMongoDB Atlasではサポートされていません。Atlas クラスターからシャードを追加または削除するには、「Atlasシャードクラスタの変更」を参照してください。

このコマンドの構文は、次のとおりです。

db.adminCommand(
{
addShard: "<replica_set>/<hostname><:port>",
name: "<shard_name>"
}
)

注意

バージョン6.2 以降、 MongoDB はmaxSize コマンドからaddShard フィールドを削除します。以下はその結果です。

  • Running addShard with the maxSize field returns an InvalidOptions error.

  • shards コレクション内の新しいドキュメントには、maxSize フィールドは含まれなくなりました。

  • 既存の maxSize フィールド エントリはすべて無視されます。

このコマンドには次のフィールドが含まれています。

フィールド
タイプ
説明

addShard

string

シャードのレプリカセットの少なくとも 1 つのノードのレプリカセット名、ホスト名、ポート。 追加のレプリカセット ノードのホスト名は、カンマで区切る必要があります。 例:

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

name

string

任意。 シャードの名前。 これが指定されていない場合、MongoDB は自動的に一意の名前を付与します。

The addShard command stores shard configuration information in the config database. Always run addShard when using the admin database.

シャーディングされたクラスターに追加するシャードは空である必要があります。

シャーディングされたクラスターにシャードを追加すると、既存のすべてのシャーディングされたコレクションのクラスターのシャード間のチャンクのバランスに影響します。 バランサーはチャンクの移行を開始し、クラスターがバランスをとります。 詳細については、「バランサーの内部」を参照してください。

重要

You cannot include a hidden member in the seed list provided to addShard.

addShard コマンドを実行するには、クラスターリソースに対して addShard アクション が必要です。clusterAdmin または clusterManager組み込みロールには、addShardアクションが含まれており、addShard コマンドを実行する特権が付与されます。

次のコマンドは、レプリカセットをシャードとして追加します。

use admin
db.runCommand( { addShard: "repl0/mongodb3.example.net:27327"} )

警告

コンフィギュレーションサーバーもlocalhostで実行されていない限り、ホスト名にlocalhostを使用しないでください。