定義
enableSharding注意
バージョン 6.0 での変更。
MongoDB 、コレクションを シャーディング する場合、このコマンドは必須ではあり ません6.0 。
enableShardingコマンドはデータベースを明示的に作成します。Tip
mongoshでは、このコマンドはsh.enableSharding()ヘルパー メソッドを通じて実行することもできます。ヘルパー メソッドは
mongoshユーザーには便利ですが、データベースコマンドと同じレベルの情報は返されない可能性があります。 便宜上必要ない場合、または追加の戻りフィールドが必要な場合は、 データベースコマンドを使用します。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
推奨。 作成するデータベースを指定します。
db.adminCommand( { enableSharding: "<database name>" } ) オプションで、 コマンドにプライマリシャード仕様を含めることができますが、これは推奨されません。
db.adminCommand( { enableSharding: "<database name>", primaryShard: "<shard name>" } )
データベースではmongos インスタンスからのみenableSharding adminコマンドを実行できます。
コマンドフィールド
このコマンドは、次のフィールドを使用します。
フィールド | タイプ | 説明 |
|---|---|---|
文字列 | 使用するデータベース。 データベースが存在しない場合は作成されます。 | |
文字列 | 任意。 データベースのプライマリシャード。プライマリシャードには、このデータベースのシャーディングされていないコレクションが含まれています。 一般に、プライマリ シャードを明示的に指定するのではなく、バランサーによってプライマリ シャードが選択されるようにすることをお勧めします。 警告Tip一般に、プライマリシャードを指定する必要はありません。 バランサーが代わりにプライマリ シャードを選択できるようにします。 |
戻り値
このコマンドは、操作のステータスを含むドキュメントを返します。
動作
書込み保証 (write concern)
mongos"majority"enableShardingsh.enableSharding()は、 コマンドとそのヘルパー に使用します。
プライマリシャード
一般に、コマンドでプライマリシャードを指定する必要はありません。 代わりに、バランサーでプライマリシャードを選択できるようにします。
ただし、 データベース の コマンドでプライマリ シャード を指定し、かつデータベースが別のプライマリ シャードでシャーディングがすでに有効になっている場合、操作はエラーを返し、データベースのプライマリ シャードは以前のままになります。データベースのプライマリシャードを変更するには、代わりにmovePrimaryを使用します。
例
mongosから次のコマンドを実行すると、 shardTestデータベースが作成されます。
db.adminCommand( { enableSharding: "shardTest" } )