Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

replSetSyncFrom (comando de base de datos)

replSetSyncFrom

Reemplaza temporalmente el destino de sincronización por defecto para el mongod actual. Esta operación es útil para probar diferentes patrones y en situaciones donde un nodo no se está replicando desde el host deseado.

Ejecuta replSetSyncFrom en la base de datos admin.

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 la compatibilidad de Atlas con todos los comandos, consulte 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 nodo del conjunto de réplicas desde el que este nodo debe replicarse. Utiliza el formulario [hostname]:[port].

Los miembros del conjunto de réplicas con 1 vote no pueden sincronizarse con nodos con 0 votes.

Para que replSetSyncFrom anule el destino de sincronización predeterminado, settings.chainingAllowed debe establecerse en true.

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

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

Si se está llevando a cabo una operación de sincronización inicial cuando ejecuta replSetSyncFrom, replSetSyncFrom detiene la sincronización inicial en curso y reinicia el proceso de sincronización con el nuevo destino.

Modifica solamente la lógica de sincronización por defecto cuando sea necesario, y siempre actúa con precaución.

El nodo desde el que se sincroniza debe ser una fuente válida para los datos del conjunto. Para sincronizar desde un nodo, el nodo debe:

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

  • Sé accesible.

  • Ser nodo del mismo conjunto en la configuración del set de réplicas.

  • Crear un índice con la configuración members[n].buildIndexes.

  • Un nodo diferente del conjunto, para evitar la sincronización de 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. mongod volverá al comportamiento de sincronización predeterminado en las siguientes situaciones:

  • Se reinicia la instancia mongod.

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

  • Si el objetivo de sincronizar se retrasa más de maxSyncSourceLagSecs (por defecto 30) segundos con respecto a otro nodo del set de réplicas.

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