Solución de problemas en Aurora DSQL
nota
En los siguientes temas se proporcionan consejos para la solución de problemas y errores que puede encontrar al utilizar Aurora DSQL. Si encuentra un problema que no figura en esta lista, póngase en contacto con el servicio de asistencia de AWS
Temas
Solución de problemas de errores de conexión
error: código de error SSL no reconocido: 6 o no se puede aceptar la conexión, no se recibió sni
Puede que esté utilizando una versión de psql anterior a la versión 14
Puede comprobar la versión de cliente con psql --version.
error: NetworkUnreachable
Es posible que un error NetworkUnreachable durante los intentos de conexión indique que el cliente no admite conexiones IPv6, en lugar de señalar un problema real de red. Este error suele producirse en instancias que solo utilizan IPv4 debido a la forma en que los clientes de PostgreSQL gestionan las conexiones de doble pila. Cuando un servidor admite el modo de doble pila, estos clientes primero resuelven los nombres de host a direcciones IPv4 e IPv6. Primero intentan establecer una conexión IPv4 y, a continuación, prueban con IPv6 si la conexión inicial produce un error. Si el sistema no es compatible con IPv6, verá un error general NetworkUnreachable en lugar de un mensaje claro que diga “IPv6 no es compatible”.
Solución de problemas de errores de autenticación
Error de autenticación de IAM para el usuario "..."
Cuando genera un token de autenticación de IAM de Aurora DSQL, la duración máxima que puede establecer es de una semana. Después de una semana, no podrá autenticarse con ese token.
Además, Aurora DSQL rechaza la solicitud de conexión si el rol asumido ha caducado. Por ejemplo, si intenta conectarse con un rol de IAM temporal aunque el token de autenticación no haya caducado, Aurora DSQL rechazará la solicitud de conexión.
Para obtener más información sobre cómo funciona IAM con Aurora DSQL, consulte Descripción de la autenticación y autorización para Aurora DSQL y AWS Identity and Access Management en Aurora DSQL.
An error occurred (InvalidAccessKeyId) when calling the GetObject operation: The AWS Access Key ID you provided does not exist in our records
IAM ha rechazado la solicitud. Para obtener más información, consulte Por qué se firman las solicitudes.
IAM role <role> does not exist
Aurora DSQL no ha podido encontrar el rol de IAM. Para obtener más información, consulte Roles de IAM.
IAM role must look like an IAM ARN
Consulte Identificadores IAM: ARN de IAM para obtener más información.
Asignación incorrecta entre usuario y acción
Este error se produce cuando el tipo de token de autenticación no coincide con el rol de la base de datos. Aurora DSQL utiliza dos tipos de tokens: DbConnectAdmin para el rol de admin y DbConnect para roles de base de datos personalizados.
-
Si ve
Wrong user to action mapping. user: admin, action: DbConnect, usegenerate-db-connect-admin-auth-tokenen lugar degenerate-db-connect-auth-token. -
Si ve
Wrong user to action mapping. user:, usemyusername, action: DbConnectAdmingenerate-db-connect-auth-tokenen lugar degenerate-db-connect-admin-auth-token.
Solución de problemas de errores de autorización
Role <role> not supported
Aurora DSQL no admite la operación GRANT. Consulte Subconjuntos de comandos SQL admitidos en Aurora DSQL.
Cannot establish trust with role <role>
Aurora DSQL no admite la operación GRANT. Consulte Subconjuntos de comandos SQL admitidos en Aurora DSQL.
El rol <rol> no existe
Aurora DSQL no ha podido encontrar el usuario de base de datos especificado. Consulte Autorización de roles personalizados de base de datos para conectarse a un clúster.
ERROR: permission denied to grant IAM trust with role <role>
Para conceder acceso a un rol de base de datos, debe estar conectado al clúster con el rol de administrador. Para obtener más información, consulte Autorización de roles de base de datos para utilizar SQL en una base de datos.
ERROR: role <role> must have the LOGIN attribute
Todos los roles de base de datos que cree deben tener el permiso LOGIN.
Para solucionar este error, asegúrese de que ha creado el rol de PostgreSQL con el permiso LOGIN. Para obtener más información, consulte CREATE ROLE
ERROR: role <role> cannot be dropped because some objects depend on it
Aurora DSQL devuelve un error si descarta un rol de base de datos con una relación de IAM hasta que revoque la relación mediante AWS IAM REVOKE. Para obtener más información, consulte Revocación de la autorización.
Solución de errores de SQL
Error: Not supported
Aurora DSQL no admite todos los dialectos basados en PostgreSQL. Para saber lo que se admite, consulte Características de PostgreSQL admitidas en Aurora DSQL.
Error: use CREATE INDEX ASYNC instead
Para crear un índice en una tabla con filas existentes, debe utilizar el comando CREATE INDEX
ASYNC. Para obtener más información, consulte Creación de índices de forma asíncrona en Aurora DSQL.
Solución de problemas de respuestas de control de simultaneidad
OC000 “ERROR: cambie conflictos con otra transacción (OC000)”
Esta transacción intentó modificar las mismas tuplas que otra transacción simultánea. Esto indica que hay contención en las tuplas modificadas. Para obtener más información, consulte Control de simultaneidad en Aurora DSQL.
OC001 “ERROR: otra transacción ha actualizado el esquema (OC001)”
La sesión tenía una copia en caché del catálogo de esquemas en la versión V1, cargada en el tiempo T1.
Una transacción independiente actualizó el catálogo a la versión V2 en el tiempo T2.
El tiempo T3, cuando la sesión ejecuta una consulta, detecta que está atrasada e intenta rebasarla en los nuevos cambios del catálogo. En algunas situaciones, el rebase no se puede realizar correctamente y Aurora DSQL devuelve una respuesta OC001 40001. El tiempo entre T2 y T3 puede oscilar entre milisegundos y minutos, ya que los procesadores de consultas detectan los cambios en el catálogo de forma reactiva en lugar de recibir actualizaciones proactivas.
Cuando se reintenta desde la misma sesión, Aurora DSQL actualiza la memoria caché del catálogo. La transacción reintentada utiliza el catálogo V2 y se realiza correctamente siempre que no se hayan producido más cambios en el catálogo desde T2.
Solución de problemas de las conexiones SSL/TLS
Error de SSL: no se pudo verificar el certificado
Este error indica que el cliente no puede verificar el certificado del servidor. Asegúrese de que:
-
El certificado Amazon Root CA 1 está instalado correctamente. Consulte Configuración de certificados SSL/TLS para conexiones de Aurora DSQL para obtener instrucciones sobre cómo validar e instalar este certificado.
-
La variable de entorno
PGSSLROOTCERTapunta al archivo de certificado correcto. -
El archivo de certificado tiene los permisos correctos.
Código de error SSL no reconocido: 6
Este error se produce con los clientes de PostgreSQL anteriores a la versión 14. Actualice el cliente de PostgreSQL a la versión 17 para resolver este problema.
Error de SSL: esquema no registrado (Windows)
Este es un problema conocido con el cliente psql de Windows cuando se utilizan certificados del sistema. Utilice el método del archivo de certificado descargado que se describe en las instrucciones de Conexión desde Windows.