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.
Menu Docs

replSetSyncFrom (comando de banco de dados)

replSetSyncFrom

Substitui temporariamente o destino de sincronização padrão para o mongod atual . Esta operação é útil para testar padrões diferentes e em situações em que um membro do conjunto não está replicando a partir do host desejado.

Dica

In mongosh, this command can also be run through the rs.syncFrom() helper method.

Helper methods are convenient for mongosh users, but they may not return the same level of information as database commands. In cases where the convenience is not needed or the additional return fields are required, use the database command.

Run replSetSyncFrom in the admin database.

Esse comando está disponível em implantações hospedadas nos seguintes ambientes:

  • MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB

  • MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB

Importante

Este comando não é aceito em clusters do MongoDB Atlas. Para obter informações sobre o suporte do Atlas a todos os comandos, consulte Comandos não suportados.

O comando tem a seguinte sintaxe:

db.adminCommand(
{
replSetSyncFrom: "hostname<:port>"
}
)

O comando usa o seguinte campo:

Campo
Tipo
Descrição

replSetSyncFrom

string

O nome e o número da porta do nó do conjunto de réplicas do qual este nó deve replicar. Use o formulário [hostname]:[port] .

Membros do conjunto de réplicas com 1 vote não podem ser sincronizados a partir de membros com 0 votes.

For replSetSyncFrom to override the default sync target, settings.chainingAllowed must be set to true.

If settings.chainingAllowed is set to false, replSetSyncFrom returns ok:1 but does not set the sync target.

A partir do MongoDB 5.0.2, você pode substituir settings.chainingAllowed configurando o parâmetro do servidor enableOverrideClusterChainingSetting como true. Isso permite a sincronização de um membro secundário, mesmo que settings.chainingAllowed seja false.

If an initial sync operation is in progress when you run replSetSyncFrom, replSetSyncFrom stops the in-progress initial sync and restarts the sync process with the new target.

Modifique apenas a lógica de sincronização padrão conforme necessário e sempre tenha cuidado.

O membro de quem sincronizar deve ser uma fonte válida para dados no conjunto. Para sincronizar de um membro, o membro deve:

  • Tenha dados. Não pode ser um árbitro, no modo de inicialização ou recuperação, e deve ser capaz de responder a queries de dados.

  • Seja acessível.

  • Seja um membro do mesmo conjunto na configuração do conjunto de réplicas.

  • Construa índices com a configuração members[n].buildIndexes.

  • Outro nó do conjunto, para evitar a sincronização dele mesmo.

Se você tentar replicar de um membro que está mais de 10 segundos atrás do membro atual, mongod registrará um aviso, mas ainda replicará do membro atrasado. Consulte também Controle de fluxo e atraso de replicação.

replSetSyncFrom provide a temporary override of default behavior. mongod will revert to the default sync behavior in the following situations:

  • A instância do mongod é reiniciada.

  • A conexão entre o mongod e o destino de sincronização é fechada.

  • Se o alvo de sincronização ficar mais de maxSyncSourceLagSecs (padrão 30) segundos atrás de outro membro do conjunto de réplicas.

For more information the use of replSetSyncFrom, see Configure a Self-Managed Secondary's Sync Target.