View a markdown version of this page

Acceso a Aurora DSQL con clientes compatibles con PostgreSQL - Amazon Aurora DSQL

Acceso a Aurora DSQL con clientes compatibles con PostgreSQL

Aurora DSQL usa el protocolo de conexión de PostgreSQL. Puede conectarse a PostgreSQL mediante una variedad de herramientas y clientes, como AWS CloudShell, psql, DBeaver y DataGrip. En la siguiente tabla, se resume cómo Aurora DSQL asigna los parámetros de conexión de PostgreSQL más comunes:

PostgreSQL Aurora DSQL Notas
Rol (también conocido como Usuario o Grupo) Rol de base de datos Aurora DSQL crea un rol para usted denominado admin. Cuando crea roles de base de datos personalizados, debe utilizar el rol de admin para asociarlos con los roles de IAM para la autenticación cuando se conecte al clúster. Para obtener más información, consulte Uso de roles de base de datos y autenticación de IAM.
Host (también conocido como hostname o hostspec) Punto de conexión de clúster Los clústeres de una sola región de Aurora DSQL proporcionan un único punto de conexión administrado y redirigen automáticamente el tráfico si no hay disponibilidad en la región.
Puerto N/A: utilice el valor predeterminado 5432 Este es el valor predeterminado de PostgreSQL.
Base de datos (dbname) Utilizar postgres Aurora DSQL crea esta base de datos para usted cuando crea el clúster.
Modo SSL SSL siempre está habilitado en el servidor En Aurora DSQL, Aurora DSQL admite el modo SSL require. Aurora DSQL rechaza las conexiones sin SSL.
Contraseña Token de autenticación Aurora DSQL requiere tokens de autenticación temporales en lugar de contraseñas de larga duración. Para obtener más información, consulte Generación de un token de autenticación en Amazon Aurora DSQL.

Al conectarse, Aurora DSQL requiere un token de autenticación de IAM firmado en lugar de una contraseña tradicional. Estos tókenes temporales se generan con la versión 4 de AWS Signature y solo se utilizan durante el establecimiento de la conexión. Una vez conectada, la sesión permanece activa hasta que finalice o el cliente se desconecte.

Si intenta abrir una nueva sesión con un token caducado, la solicitud de conexión producirá un error y deberá generarse un nuevo token. Para obtener más información, consulte Generación de un token de autenticación en Amazon Aurora DSQL.

Parámetros de sesión admitidos

Aurora DSQL optimiza automáticamente el almacenamiento, la administración de conexiones y el procesamiento de transacciones, por lo que admite un conjunto específico de parámetros de sesión. Aurora DSQL admite los parámetros mostrados en la tabla siguiente. Los parámetros fuera de este conjunto devuelven el siguiente error:

ERROR: setting configuration parameter "parameter_name" not supported

Aurora DSQL admite los siguientes parámetros de sesión de PostgreSQL. A menos que se indique lo contrario, puede configurarlos mediante SET, SET SESSION o como opciones de cadena de conexión. También se puede utilizar SET LOCAL para establecer cualquiera de estos parámetros durante la duración de una sola transacción. Utilice RESET para restaurar un parámetro a su valor predeterminado.

Parámetros de sesión admitidos
Parámetro Categoría Descripción
application_name Identificación de cliente Establece el nombre de la aplicación indicado en los metadatos de la conexión. Es útil para identificar las conexiones en la supervisión.
client_encoding Localización Define la codificación de caracteres del cliente. La base de datos usa UTF-8 de forma interna.
datestyle Formato de salida Define el formato de visualización para los valores de fecha y hora (por ejemplo, ISO, MDY).
extra_float_digits Formato de salida Define el número de dígitos que se muestran para los valores de punto flotante. Algunos controladores, como JDBC, utilizan este parámetro.
intervalstyle Formato de salida Define el formato de visualización para los valores de intervalo.
timezone Localización Establece la zona horaria para la sesión. Aurora DSQL almacena internamente todas las fechas y horas que tienen en cuenta las zonas horarias en UTC. Este parámetro controla la forma en que Aurora DSQL muestra los valores al cliente.
search_path Resolución de esquemas Define el orden de búsqueda del esquema para nombres de objetos incompletos.
enable_bitmapscan Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de examen de mapa de bits.
enable_hashjoin Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de combinación hash.
enable_indexonlyscan Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de examen solo de índice.
enable_indexscan Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de examen de índice.
enable_material Planificador de consultas Habilita o desactiva el uso de la materialización por parte del planificador de consultas.
enable_mergejoin Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de unión de combinación.
enable_nestloop Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de planes de unión de bucle anidado.
enable_seqscan Planificador de consultas Habilita o desactiva el uso de planificadores de consultas de tipos de planes de análisis secuencial.
disable_sync_create_index Específico de Aurora DSQL Controla si CREATE INDEX se ejecuta de forma asincrónica. El valor predeterminado es on, lo que significa que Aurora DSQL crea índices de forma asíncrona. Se establece en off para crear índices de forma sincrónica en tablas vacías.
role Identidad de sesión Establece el rol actual. En Aurora DSQL, solo puede establecer este parámetro con SET LOCAL dentro de un bloque de transacciones.

Aurora DSQL administra automáticamente los siguientes aspectos de la base de datos, por lo que no necesita configurar los parámetros de sesión de PostgreSQL correspondientes:

  • Parámetros de conexión y red: Aurora DSQL administra internamente el ciclo de vida de la conexión y la configuración de TCP, que incluye tcp_keepalives_idle, tcp_keepalives_interval y tcp_keepalives_count.

  • Parámetros de memoria y recursos: Aurora DSQL administra automáticamente la asignación de memoria, que incluye work_mem y shared_buffers.

  • Parámetros de tiempo de espera: Aurora DSQL aplica sus propios límites de duración de las transacciones, que incluye statement_timeout, lock_timeout y idle_in_transaction_session_timeout.

  • Parámetros de replicación y WAL: Aurora DSQL gestiona la replicación automáticamente a través de su arquitectura multirregional integrada, que incluye wal_level y synchronous_commit.

  • Parámetros de registro: Aurora DSQL administra el registro internamente, que incluye log_statement y client_min_messages.

  • Parámetros de transacción: Aurora DSQL utiliza un nivel de aislamiento fijo REPEATABLE READ para todas las transacciones. Si el controlador requiere especificar un nivel de aislamiento, utilice BEGIN ISOLATION LEVEL REPEATABLE READ.

Acceso a Aurora DSQL con clientes de SQL

Aurora DSQL admite varios clientes compatibles con PostgreSQL para conectarse al clúster. En las siguientes secciones, se describe cómo conectarse mediante PostgreSQL con AWS CloudShell o con la línea de comandos local, así como herramientas basadas en la interfaz gráfica de usuario, como DBeaver y JetBrains DataGrip. Cada cliente requiere un token de autenticación válido tal y como se describe en la sección anterior.

Solución de problemas

Expiración de las credenciales de autenticación de los clientes de SQL

Las sesiones establecidas permanecen autenticadas durante un máximo de 1 hora o bien hasta que se produzca una desconexión explícita o se agote el tiempo de espera del cliente. Si es necesario establecer nuevas conexiones, debe generarse un nuevo token de autenticación y proporcionarlo en el campo Contraseña de la conexión. El intento de abrir una nueva sesión (por ejemplo, para enumerar las tablas nuevas o abrir una nueva consola SQL) fuerza un nuevo intento de autenticación. Si el token de autenticación configurado en la configuración de Conexión ya no es válido, se producirá un error en esa nueva sesión y todas las sesiones abiertas anteriormente dejarán de ser válidas. Tenga esto en cuenta cuando elija la duración del token de autenticación de IAM con la opción expires-in, que se puede configurar en quince minutos de forma predeterminada y establecerse en un valor máximo de siete días.

Además, consulte la sección Solución de problemas de la documentación de Aurora DSQL.