ソースクラスターから宛先クラスターに同期されたコレクションの MD5dbHash ハッシュを比較することで、同期を確認できます。ハッシュの比較により、宛先クラスターがソースからのすべての変更を受け取ったことが保証されますが、 コマンドはクラスターをロックし、完了するまで追加の書込みを防ぎます。このプロセスは、ドキュメント数を使用する検証よりもはるかに遅くなる可能性があります。
このタスクについて
シャーディングされたクラスターではハッシュ比較はできません。
シャーディングされたクラスターや MongoDB の古いリリースを同期する必要がある場合、またはアプリケーション ワークロードでロックが受け入れられない場合は、別の検証方法を使用します。
手順
1
ソース ハッシュの取得
dbHashソースクラスターで コマンドを実行します。collections フィールドに、同期に含まれる各コレクションを一覧表示します。次に、 の出力フィールドを返します。md5
db.runCommand({ dbHash: 1, collections: [ "accounts.us_accounts", "accounts.eu_accounts", ... ]}).md5
d41d8cd98f00b204e9800998ecf8427e
このコマンドを実行しながら、宛先ハッシュを取得します。
2
宛先ハッシュの取得
dbHash宛先クラスターで コマンドを実行します。collections フィールドに、同期に含まれる各コレクションを一覧表示します。次に、 の出力フィールドを返します。md5
db.runCommand({ dbHash: 1, collections: [ "accounts.us_accounts", "accounts.eu_accounts", ... ]}).md5
d41d8cd98f00b204e9800998ecf8427e
ハッシュに注目してください。