Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

db.checkMetadataConsistency()

項目一覧

  • 定義
  • 互換性
  • 構文
db.checkMetadataConsistency(options)

クラスターまたはデータベースのシャーディング メタデータの整合性に関して一連のチェックを実行します。 このメソッドは、不整合の結果のすべてまたはバッチが見つかったカーソルを返します。

重要

mongosh メソッド

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

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

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

アップグレードやダウングレードなどの主要なメンテナンス操作の後にこのメソッドを実行し、MongoDB の以前のリリースのバグが原因でクラスター メタデータが一貫していないか、破損していないかどうかを確認します。

デフォルトでは、 メソッドはシャード間での整合性についてインデックスをチェックしません。 インデックス チェックは、インデックスを作成、削除、または変更する操作と同時に実行されると、誤検知の不整合を返す可能性があります。 この方法でインデックスを確認するには、 checkIndexesオプションを設定します。

By default, the method checks sharding metadata for the given database. adminデータベースで実行すると、代わりにクラスター全体のシャーディング メタデータが確認されます。

このメソッドが検索する不整合について詳しくは、「不整合のタイプ 」を参照してください。

次の値を返します。このメソッドは、シャーディング メタデータで見つかった各不整合に対応するドキュメントを含むdocuments配列を持つカーソルを返します。

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

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

注意

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

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

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

db.checkMetadataConsistency()メソッドの構文は次のとおりです。

db.checkMetadataConsistency( { <options> } )

optionsドキュメントは、次のフィールドと値を取ることができます。

フィールド
タイプ
説明
checkIndexes
ブール値

コマンドがシャーディング メタデータのインデックスもチェックするかどうかを設定します。

デフォルトでは、この操作は無効になっています。これは、インデックスを作成、削除、または変更する操作と同時に実行されると、誤検知によって不整合が返される可能性があるためです。 これらの操作が発生する可能性が低いことがわかっている場合にのみ、インデックスをチェックしてください。

cursor
ドキュメント
リターンカーソル を構成します。
cursor.batchSize
integer
各バッチに含めるシャーディング メタデータの不整合ドキュメントの最大数。

データベースで整合性チェックを実行するには、 db.checkMetadataConsistency()メソッドを呼び出します。

use library
db.checkMetadataConsistency()
{
cursorHasMore: false,
documents: [
{
type: "MisplacedCollection",
description: "Unsharded collection found on shard different from database primary shard",
details: {
namespace: "library.authors",
shard: "shard02",
localUUID: new UUID("1ad56770-61e2-48e9-83c6-8ecefe73cfc4")
}
}
],
}

クラスターで整合性チェックを実行するには、 adminデータベースからdb.checkMetadataConsistency()メソッドを呼び出します。

use admin
db.checkMetadataConsistency()
{
cursorHasMore: false,
documents: [
{
type: "MisplacedCollection",
description: "Unsharded collection found on shard different from database primary shard",
details: {
namespace: "library.authors",
shard: "shard02",
localUUID: new UUID("1ad56770-61e2-48e9-83c6-8ecefe73cfc4")
}
}
],
}

戻る

convertShardKeyToHashed