enableSharding
定義
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"
enableSharding
sh.enableSharding()
は、 コマンドとそのヘルパー に使用します。
プライマリシャード
一般に、コマンドでプライマリシャードを指定する必要はありません。 代わりに、バランサーでプライマリシャードを選択できるようにします。
ただし、 データベース の コマンドでプライマリ シャード を指定し、かつデータベースが別のプライマリ シャードでシャーディングがすでに有効になっている場合、操作はエラーを返し、データベースのプライマリ シャードは以前のままになります。データベースのプライマリシャードを変更するには、代わりにmovePrimary
を使用します。
例
mongos
から次のコマンドを実行すると、 shardTest
データベースが作成されます。
db.adminCommand( { enableSharding: "shardTest" } )