shardingState
shardingState
shardingState
は、mongod
が シャーディングされたクラスターのメンバーであるかどうかを報告する管理コマンドです。 コマンドを実行するには、admin
データベースに対して を実行する必要があります。 詳しくはdb.adminCommand()
を参照してください。
互換性
このコマンドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
注意
このコマンドは、すべての MongoDB Atlas クラスターでサポートされています。すべてのコマンドに対する Atlas のサポートについては、「サポートされていないコマンド」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
このコマンドの構文は、次のとおりです。
{ shardingState: 1 }
コマンドを実行するには、 admin
データベースに対して を実行する必要があります。 詳しくはdb.adminCommand()
を参照してください。
動作
shardingState
がmongod
がシャーディングされたクラスターのメンバーであることを検出するには、 mongod
が次の条件を満たす必要があります。
shardingState
がmongod
がシャーディングされたクラスターのメンバーであることを検出した場合、 shardingState
は次のプロトタイプのようなドキュメントを返します。
{ "enabled" : true, "configServer" : "<configdb-string>", "shardName" : "<string>", "shardHost" : "string:", "versions" : { "<database>.<collection>" : Timestamp(<...>), "<database>.<collection>" : Timestamp(<...>) }, "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1510716515, 1), "signature" : { "hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="), "keyId" : NumberLong("6488045157173166092") } }, "operationTime" : Timestamp(1510716515, 1) }
それ以外の場合、 shardingState
は次のドキュメントを返します。
{ "enabled" : false, "ok" : 1, "$clusterTime" : { "clusterTime" : Timestamp(1510716515, 1), "signature" : { "hash" : BinData(0,"B2ViX7XLzFLS5Fl9XEuFXbwKIM4="), "keyId" : NumberLong("6488045157173166092") } }, "operationTime" : Timestamp(1510716515, 1) }
コンフィギュレーションサーバー で使用した場合のshardingState
からの応答は次のとおりです。
{ "enabled" : false, "ok" : 1, "operationTime" : Timestamp(1510767613, 1), "$gleStats" : { "lastOpTime" : Timestamp(0, 0), "electionId" : ObjectId("7fffffff0000000000000001") }, "$clusterTime" : { "clusterTime" : Timestamp(1510767613, 1), "signature" : { "hash" : BinData(0,"IwBZ4SZjIMI5NdM62NObV/R31GM="), "keyId" : NumberLong("6488693018630029321") } } }
注意
mongos
インスタンスはshardingState
を提供しません。
警告
このコマンドは、影響を受けるデータベースに対して書込みロック (write lock) を取得し、完了するまで他の操作をブロックします。ただし、この操作は通常短時間です。