Docs Menu
Docs Home
/ /
Replicación

replSetSyncFrom (comando de base de datos)

replSetSyncFrom

Anula temporalmente el objetivo de sincronización predeterminado para la situación actual. mongodEsta operación es útil para probar diferentes patrones y en situaciones donde un miembro del conjunto no se replica desde el host deseado.

Tip

mongoshEn, este comando también se puede ejecutar a través del método rs.syncFrom() auxiliar.

Los métodos asistente son convenientes para usuarios de mongosh, pero es posible que no proporcionen el mismo nivel de información que los comandos de base de datos. En los casos en que no se necesite la conveniencia o se requieran campos de retorno adicionales, utiliza el comando de base de datos.

Ejecute en replSetSyncFrom la admin base de datos.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

Importante

Este comando no es compatible con los clústeres de MongoDB Atlas. Para obtener información sobre el soporte de Atlas para todos los comandos, consulta Comandos no compatibles.

El comando tiene la siguiente sintaxis:

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

El comando toma el siguiente campo:

Campo
Tipo
Descripción

replSetSyncFrom

string

El nombre y el número de puerto del miembro del conjunto de réplicas desde el que este miembro debe replicar. Use el formato [hostname]:[port].

Los miembros 0 votes del conjunto de réplicas con no pueden sincronizarse desde los 1 votemiembros con.

Para que anule el replSetSyncFrom settings.chainingAllowed objetivo de truesincronización predeterminado, debe establecerse en.

Si settings.chainingAllowed se establece false en, replSetSyncFrom devuelve ok:1 pero no establece el objetivo de sincronización.

A partir de MongoDB 5.0.2, puede anular settings.chainingAllowed estableciendo el parámetro de servidor enableOverrideClusterChainingSetting en true. Esto permite la sincronización desde un miembro secundario incluso si settings.chainingAllowed es false.

Si hay una operación de sincronización inicial en curso cuando replSetSyncFrom ejecuta, replSetSyncFrom detiene la sincronización inicial en curso y reinicia el proceso de sincronización con el nuevo destino.

Modifique la lógica de sincronización predeterminada únicamente cuando sea necesario y tenga siempre cuidado.

El miembro desde el que se realizará la sincronización debe ser una fuente válida para los datos del conjunto. Para sincronizar desde un miembro, este debe:

  • Tiene datos. No puede ser árbitro, ni en modo de inicio ni de recuperación, y debe poder responder consultas de datos.

  • Ser accesible.

  • Sea miembro del mismo conjunto en la configuración del conjunto de réplicas.

  • Construya índices con la members[n].buildIndexes configuración.

  • Un miembro diferente del conjunto, para evitar la sincronización desde sí mismo.

Si intentas replicar desde un nodo que tiene más de 10 segundos de retraso con respecto al nodo actual, mongod registrará un registro de advertencia, pero aún así replicará desde el nodo rezagado. Consulta también atraso de la replicación y control de flujo.

replSetSyncFrom proporciona una anulación temporal del comportamiento predeterminado. volverá al comportamiento de sincronización predeterminado en las siguientesmongod situaciones:

  • La mongod instancia se reinicia.

  • La conexión entre y el destino de sincronización se mongod cierra.

  • Si el objetivo de sincronización se queda más de 30 segundos detrás de otro miembro del conjunto de réplicas.

Para obtener más información sobre el uso replSetSyncFrom de, consulte Configurar el destino de sincronización de un secundario autoadministrado.

Volver

replSetStepDown

En esta página