Mi tarea de AWS Database Migration Service (AWS DMS) falla durante las fases de carga completa y captura de datos de cambios (CDC), y se producen problemas en los puntos de enlace y errores específicos de la base de datos.
Resolución
Revisión de la configuración de conectividad del punto de enlace
Para revisar la conectividad del punto de enlace de origen o destino de tu tarea, sigue estos pasos:
- Abre la consola de AWS DMS.
- En el panel de navegación, elige Migrar o replicar.
- Elige Tareas y, a continuación, selecciona tu tarea.
- En la pestaña Detalles, comprueba el nombre de la instancia de replicación en la sección Conectividad y seguridad para asegurarte de que estás usando la instancia de replicación correcta.
- En la sección Resumen, selecciona el punto de enlace de origen o de destino para revisar la interfaz del punto de enlace.
- Elige la pestaña Conexiones y, a continuación, elige Probar las conexiones.
- Elige Instancia de replicación y, a continuación, elige Ejecutar prueba.
Si la prueba de conectividad da como resultado el estado Error debido a una configuración de red, obtienes los siguientes mensajes de error de tiempo de espera:
Para Oracle:
“Test Endpoint failed: Application-Status: 1020912, Application-Message: ORA-12170: TNS:Connect timeout occurred OCI connection failure.”
Para PostgreSQL:
“Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to connect Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: “
Para Amazon DocumentDB (compatible con MongoDB):
“Test Endpoint failed: Application-Status: 1020912, Application-Message: Failed to create new client connection Failed to connect to database., Application-Detailed-Message: Error verifying connection”
Para resolver este problema, consulta ¿Cómo puedo solucionar los errores de conectividad de los puntos de enlace de AWS DMS?A continuación, vuelve a probar la conexión.
Revisión de la configuración de autenticación del punto de enlace
La prueba de conectividad del punto de enlace de AWS DMS puede mostrar un mensaje de error de autenticación. Para solucionar un mensaje de error de autenticación, comprueba que hayas configurado correctamente el acceso a tu punto de enlace de AWS DMS.
Sigue estos pasos:
- Abre la consola de AWS DMS.
- En el panel de navegación, elige Migrar o replicar.
- Elige Puntos de enlace y, a continuación, selecciona tu punto de enlace.
- Elige Acciones y, a continuación, elige Modificar.
- En la sección Configuración de punto de enlace, revisa lo siguiente en Acceder a la base de datos de punto de enlace:
Si has seleccionado proporcionar la información de acceso manualmente, comprueba que el host que has definido en el campo nombre del servidor no incluya puertos (3306) ni protocolos (HTTP). Asegúrate de haber especificado los mismos valores de nombre de usuario, contraseña y SSL en tu base de datos.
Si has seleccionado AWS Secrets Manager y el administrador de secretos y el modo SSL correctos, consulta Common AWS DMS prerequisites (Requisitos previos comunes de AWS DMS) y Set up an Amazon VPC endpoint with AWS Secrets Manager (Configurar un punto de enlace de Amazon VPC con AWS Secrets Manager).
Si has seleccionado Autenticación Kerberos y has usado el nombre de servidor, el puerto y el nombre de usuario correctos, consulta Prerequisites (Requisitos previos) y Limitations on using Kerberos authentication with AWS DMS (Limitaciones del uso de la autenticación de Kerberos con AWS DMS).
Si has seleccionado Autenticación de IAM y has usado el nombre de servidor, el puerto, el nombre de usuario y el rol de AWS Identity and Access Management (IAM) correctos, comprueba que hayas adjuntado las políticas correctas al rol de IAM. Para obtener más información, elige la pestaña Consola de DMS en Configuring IAM authentication for Amazon RDS endpoint in AWS DMS (Configuración de la autenticación de IAM para el punto de enlace de Amazon RDS en AWS DMS) y Restricciones a la autenticación de bases de datos de IAM.
Revisión de la configuración del punto de enlace y los ECA
Si usas una base de datos conectable (PDB) de Oracle como origen al ejecutar tu tarea, puede que obtengas el siguiente mensaje de error:
“Test Endpoint failed: Application-Status: 1020912, Application-Message: Log Miner is not supported in Oracle PDB environment Endpoint initialization failed.”
Este error se produce porque has configurado el método de replicación como Log Miner en lugar de Binary Reader.
Para cambiar el método de replicación que usa la tarea de AWS DMS, sigue estos pasos:
- Abre la consola de AWS DMS.
- En el panel de navegación, elige Migrar o replicar.
- Elige Tareas y, a continuación, selecciona tu tarea.
- En la sección Resumen, selecciona el enlace de origen de la instrucción.
- Elige Acciones y, a continuación, elige Modificar.
- En Configuración del punto de enlace, elige Usar atributos de conexión de punto de enlace.
- Para configurar el método de replicación como Binary Reader, introduce el atributo useLogMinerReader=N;useBfile=Y; en el campo Atributos de conexión adicionales (ECA).
- Selecciona Guardar.
Revisión de los errores de tiempo de espera de las consultas
Cuando inicias tu tarea de AWS DMS, puede que recibas el siguiente mensaje de error de tiempo de espera de consulta de PostgreSQL:
“]E: RetCode: SQL_ERROR SqlState: 57014 NativeError: 1 Message: ERROR: canceling statement due to statement timeout; Error while executing the query [1022502] (ar_odbc_stmt.c:2738)”
Para ajustar el parámetro executeTimeout en la base de datos de origen para las solicitudes de la tarea de AWS DMS, sigue estos pasos:
- Abre la consola de AWS DMS.
- En el panel de navegación, elige Puntos de enlace y, a continuación, selecciona tu punto de enlace.
- Elige Acción y, a continuación, Modificar.
- En la sección Configuración del punto de enlace, elige Usar atributos de conexión de punto de enlace.
- Para configurar un executeTimeout personalizado, introduce executeTimeout=3600; en el campo Atributos de conexión adicionales (ECA).
- Selecciona Guardar.
Si sigues teniendo problemas de tiempo de espera, consulta ¿Cómo soluciono que una tarea de AWS DMS falle y aparezca el mensaje de error “ERROR: canceling statement due to statement timeout”?
Información relacionada
Working with AWS DMS endpoints (Uso de puntos de enlace de AWS DMS)
Creating source and target endpoints (Creación de puntos de enlace de origen y destino)
Advanced endpoint configuration (Configuración avanzada de puntos de enlace)