Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

Verificar com comparação de hash

Você pode verificar a sincronização comparando hashes MD5 de coleções sincronizadas do cluster de cluster de origem com o cluster de destino. Enquanto a comparação de hash garante que o cluster de destino recebeu todas as alterações da origem, o comando dbHash bloqueia o cluster, evitando gravações adicionais até que ele seja concluído. Esse processo também pode ser muito mais lento do que a verificação usando contagens de documento .

A comparação de hash não é possível com clusters fragmentados.

Se você precisar sincronizar um cluster fragmentado ou uma versão mais antiga do MongoDB, ou se os bloqueios forem inaceitáveis para o volume de trabalho do aplicativo, use um método de verificação diferente.

O comando dbHash aplica hash apenas às coleções no banco de dados atual, e o campo collections aceita nomes de coleção simples. Se você incluir o nome do banco de dados em um nome de coleção, como accounts.us_accounts, dbHash não encontrará nenhuma coleção correspondente e retornará o hash de uma entrada vazia em ambos os clusters. Para aplicar hash a coleções em mais de um banco de dados, mude para cada banco de dados por vez, execute o comando uma vez por banco de dados e compare os valores de md5 para cada banco de dados separadamente.

1

Mude para o banco de dados que contém as coleção sincronizadas e, em seguida, execute o comando dbHash no cluster de origem. No campo collections, liste cada coleção incluída na sincronização por nome, sem o prefixo do banco de dados. Em seguida, retorne o campo de saída md5:

use accounts
db.runCommand({
dbHash: 1,
collections: [
"us_accounts",
"eu_accounts",
...
]}).md5
9a1e4b7c2f8d3056ae91cbd4f72608b3

Ao executar este comando, recupere o hash de destino.

2

Mude para o banco de dados que contém as coleções de sincronização e, em seguida, execute o comando dbHash no cluster de destino. No campo collections, liste cada coleção incluída na sincronização por nome, sem o prefixo do banco de dados. Em seguida, retorne o campo de saída md5:

use accounts
db.runCommand({
dbHash: 1,
collections: [
"us_accounts",
"eu_accounts",
...
]}).md5
9a1e4b7c2f8d3056ae91cbd4f72608b3

Observe o hash.

3

Compare os valores md5 de cada cluster. Se ambos os clusters retornarem o mesmo valor de md5, a sincronização foi bem-sucedida.

Avalie esta página