Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

Solucionar problemas de migración en vivo

Antes de que comience el proceso de migración en vivo, Atlas realiza una comprobación de validación para asegurarse de que todos los campos y parámetros necesarios del formulario sean funcionales y correctos. Si algún parámetro es inválido, Atlas devuelve un error y la migración en vivo no avanza.

Esta sección describe los errores comunes de validación de migración en vivo y proporciona sugerencias sobre qué verificar si los encuentra.

Error
Remediación

Debe aumentarse el espacio en disco disponible en el destino

Para tener en cuenta las fluctuaciones temporales de datos durante una migración, el espacio disponible en disco en el clúster de destino debe ser mayor que el que se consume en el clúster de origen. Asegúrate de que el clúster de destino puede gestionar la migración y aumenta el tamaño del disco de tu clúster de destino si es necesario.

No se pudo acceder a la fuente especificada

Asegúrate de haber añadido los rangos de subred correctos a la lista de acceso IP del clúster de origen. Puedes encontrar los cuatro rangos de subred requeridos en la ventana modal de migración en vivo.

  • Confirme que el nombre del host que especificó resuelve a una dirección IP pública. En un símbolo del sistema, utiliza uno de los siguientes comandos:

    nslookup <hostname>
    ping <hostname>
  • Asegúrate de no estar utilizando una Conexión de emparejamiento de VPC, ya que no es compatible con la migración en vivo pull.

No se pudo resolver el nombre de host

No se encontró ninguna dirección IP para el nombre de host proporcionado. Confirme que el nombre de host proporcionado sea correcto y accesible públicamente.

Información de almacenamiento en disco no disponible

Para ejecutar el proceso de migración en vivo (pull), el usuario de MongoDB debe tener permisos en la instancia de MongoDB del clúster de origen. Para obtener más información, consulta Seguridad del clúster de origen.

Opciones SSL no válidas proporcionadas

Si el clúster de origen utiliza TLS/SSL:

  • Confirma que el parámetro tls=true esté incluido en la cadena de conexión.

  • Si el clúster de origen utiliza una Autoridad Certificadora (CA) no pública, asegúrate de que el contenido del archivo CA esté completo y correctamente pegado en el campo Upload CA file.

Si el clúster de origen no utiliza TLS/SSL:

  • Confirma que el parámetro tls no esté presente en tu cadena de conexión.

  • Verifica tu cadena de conexión y confirma que el parámetro de query ssl no esté presente. Si --ssl forma parte de tu cadena de conexión, tu clúster requiere una conexión SSL.

La fuente parece ser autónomo

Su implementación de origen debe ser un set de réplicas de MongoDB. Si tu implementación de origen es actualmente un nodo autónomo, conviértelo en un set de réplicas de un solo nodo antes de ejecutar la Migración en vivo (pull).

El clúster de origen contiene una colección de series de tiempo que no es compatible

Asegúrese de que el clúster de origen no contenga colecciones de series temporales, que no son compatibles. Para filtrar tus bases de datos en el clúster de origen e identificar qué colecciones con datos de series de tiempo han provocado el error, utiliza el comando listCollections, como en el siguiente ejemplo:

db.runCommand({ listCollections: 1, filter:{ type: "timeseries" }})

El nombre de usuario o la contraseña no son correctos

Confirme sus credenciales en mongosh con los siguientes comandos:

use admin
db.getUser("<username>");

Si el problema persiste, actualiza la contraseña del usuario de MongoDB.

No se puede procesar el archivo CA proporcionado

Confirma que tu archivo CA esté completo y correctamente pegado en la ventana modal de migración en vivo (pull).

El usuario no tiene los permisos necesarios para bloquear el guardado durante el corte de servicio

Asegúrese de que el usuario tenga los siguientes permisos: bypassWriteBlockingMode. Además, asegúrese de que el usuario tenga todos los roles requeridos para migrar datos en tiempo real.

Usuario no autorizado para ejecutar el comando

Para ejecutar el proceso de migración en vivo (pull), el usuario de MongoDB debe tener privilegios del sistema suficientes. Para saber más, consulte Seguridad del clúster de origen.

Nos encontramos con los siguientes problemas: No pudimos descartar los índices ficticios de su clúster de destino. Para evitar el impacto en el rendimiento y el almacenamiento en tu clúster, por favor, descarta manualmente los índices que tengan el sufijo _mongosync_dummy_shard_key_index.

Para encontrar qué colecciones aún contienen el índice dummy, ejecuta la siguiente query en mongosh:

db.adminCommand('listDatabases').databases
.filter(
d => !['admin', 'local', 'config'].includes(d.name)
)
.forEach(database => {
const currentDb = db.getSiblingDB(database.name);
currentDb.getCollectionNames().forEach(collName => {
const indexes =
currentDb.getCollection(collName).getIndexes();
const hasTargetIndex = indexes.some(
idx => idx.name.startsWith(
'_mongosync_dummy_shard_key_index'
)
);
if (hasTargetIndex) {
print(`${database.name}.${collName}`);
}
});
});