Conexión a un clúster de base de datos Amazon Aurora
Puede conectarse a un clúster de base de datos de Aurora con las mismas herramientas que utiliza para conectarse a una base de datos de MySQL o PostgreSQL. Especifica una cadena de conexión con cualquier script, utilidad o aplicación conectada a una instancia de base de datos de PostgreSQL o MySQL. Utiliza la misma clave pública para conexiones de Capa de conexión segura (SSL).
En la cadena de conexión, habitualmente utiliza la información del puerto y el host de terminales especiales asociados con el clúster de base de datos. Con estos terminales, puede utilizar los mismos parámetros de conexión independientemente del número de instancias de base de datos que haya en el clúster. También usa información del host y del puerto de la instancia de base de datos específica en su clúster de base de datos de Aurora, como resolución de problemas.
nota
Para los clústeres de Aurora Serverless base de datos, se conecta al punto de enlace de la base de datos en lugar de a la instancia de base de datos. Puede encontrar el punto de enlace de la base de datos para un clúster de base de datos de Aurora Serverless en la pestaña Conectividad y seguridad de AWS Management Console. Para obtener más información, consulte Uso de Amazon Aurora Serverless v1.
Independientemente del motor de base de datos Aurora y de las herramientas específicas que utilice para trabajar con el clúster o instancia de base de datos, el punto de enlace debe ser accesible. Un clúster de base de datos de Aurora puede crearse únicamente en una nube virtual privada (VPC) basada en el servicio de Amazon VPC. Esto significa que puede acceder al punto de enlace desde dentro de la VPC o fuera de la VPC utilizando uno de los siguientes enfoques.
Acceda al clúster de base de datos Amazon Aurora dentro de la VPC: habilite el acceso al clúster de base de datos Aurora a través de la VPC. Para ello, edite las reglas entrantes en el grupo Seguridad de la VPC para permitir el acceso al clúster de Aurora base de datos específico. Para obtener más información, incluido cómo configurar la VPC para diferentes escenarios de clúster de Aurora base de datos, consulte Amazon nube virtual privada VPC y Amazon Aurora.
-
Acceda al clúster de Amazon Aurora base de datos fuera de la VPC: para tener acceso a un clúster de base de datos Aurora desde fuera de la VPC, utilice la dirección pública del punto de conexión del clúster de base de datos.
Para obtener más información, consulte Solución de errores de conexión de Aurora.
Contenido
- Conexión a clústeres de bases de datos Aurora con los controladores de AWS
- Conexión a un clúster de base de datos Amazon Aurora MySQL
- Utilidades de conexión para Aurora MySQL
- Conexión a Aurora MySQL con la utilidad MySQL
- Conexión a Aurora MySQL con el controlador JDBC de Amazon Web Services (AWS)
- Conexión a Aurora MySQL con el controlador de Python de Amazon Web Services (AWS)
- Conexión a Aurora MySQL con el controlador ODBC de Amazon Web Services (AWS) para MySQL
- Conexión a Aurora MySQL mediante SSL
- Conexión a un clúster de base de datos Amazon Aurora PostgreSQL
- Solución de errores de conexión de Aurora
Conexión a clústeres de bases de datos Aurora con los controladores de AWS
El conjunto de controladores de AWS se han diseñado para permitir tiempos de transición y conmutación por error más rápidos y autenticarse con AWS Secrets Manager, AWS Identity and Access Management (IAM) e identidad federada. Los controladores de AWS se basan en la supervisión del estado del clúster de base de datos y en el conocimiento de la topología del clúster para determinar quién es el nuevo escritor. Este enfoque reduce los tiempos de transición y conmutación por error a segundos de un solo dígito, en comparación con las decenas de segundos de los controladores de código abierto.
En la tabla siguiente se enumeran las características admitidas para cada uno de los controladores. A medida que se introducen nuevas características de servicio, el objetivo del conjunto de controladores de AWS es contar con soporte integrado para estas características de servicio.
Característica | Controlador JDBC de AWS |
Controlador de Python de AWS |
Controlador ODBC de AWS para MySQL |
---|---|---|---|
Soporte de conmutación por error | Sí |
Sí |
Sí |
Supervisión mejorada de conmutación por error | Sí |
Sí |
Sí |
División de lectura y escritura | Sí |
Sí |
No |
Rastreador de conexiones de Aurora | Sí |
Sí |
No |
Conexión de metadatos del controlador | Sí |
N/A | N/A |
Telemetría | Sí |
Sí |
No |
Secrets Manager | Sí |
Sí |
Sí |
Autenticación de IAM | Sí |
Sí |
Sí |
Identidad federada (AD FS) | Sí |
Sí |
No |
Identidad federada (Okta) | Sí |
No | No |
Para obtener más información sobre los controladores de AWS, consulte el controlador de idioma correspondiente a su clúster de base de datos de Aurora MySQL o Aurora PostgreSQL.
Conexión a un clúster de base de datos Amazon Aurora MySQL
Para autenticarse en el clúster de base de datos de Aurora MySQL, puede utilizar la autenticación con nombre de usuario y contraseña de MySQL o la autenticación de base de datos AWS Identity and Access Management (IAM). Para obtener más información sobre el uso de la autenticación con nombre de usuario y contraseña de MySQL, consulte Control de acceso y administración de cuentas
Cuando tenga una conexión a su clúster de base de datos Amazon Aurora con compatibilidad con la versión 8.0 de MySQL, podrá ejecutar comandos de SQL que sean compatibles con la versión 8.0 de MySQL. La versión mínima compatible es MySQL 8.0.23. Para obtener más información sobre la sintaxis SQL de MySQL 8.0, consulte MySQL 8.0 Reference Manual
Cuando tenga una conexión a su clúster de base de datos Amazon Aurora con compatibilidad con la versión 5.7 de MySQL, podrá ejecutar comandos de SQL que sean compatibles con la versión 5.7 de MySQL. Para obtener más información sobre la sintaxis SQL de MySQL 5.7, consulte MySQL 5.7 Reference Manual
nota
Para obtener una guía detallada y práctica sobre la conexión a un clúster de base de datos de Amazon Aurora MySQL puede consultar el manual Aurora Connection Management
En la vista de detalles del clúster de base de datos, puede encontrar el punto de enlace de clúster, que se puede usar en la cadena de conexión de MySQL. El punto de enlace se compone del nombre de dominio y el puerto del clúster de base de datos. Por ejemplo, si un valor de punto de enlace es mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com:3306
, debe especificar los siguientes valores en una cadena de conexión de MySQL:
-
Para el host o el nombre del host, especifique
mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
-
Para el puerto, especifique
3306
o el valor del puerto que utilizó al crear el clúster de base de datos
El punto de enlace de clúster le conecta a la instancia principal del clúster de base de datos. Puede realizar operaciones de lectura y escritura con el punto de enlace de clúster. El clúster de base de datos también puede tener hasta 15 réplicas de Aurora que admiten acceso de solo lectura a los datos de su clúster de base de datos. La instancia principal y cada réplica de Aurora tienen un punto de enlace único que es independiente del punto de enlace del clúster y que permite establecer conexión directamente con una instancia de base de datos concreta del clúster. El punto de conexión del clúster apunta siempre a la instancia principal. Si se produce un error en la instancia principal y se reemplaza, el punto de enlace del clúster apunta a la nueva instancia principal.
Para ver el punto de enlace del clúster (punto de enlace de escritor), elija Databases (Bases de datos) en la consola de Amazon RDS y elija el nombre del clúster de base de datos para mostrar sus detalles.
Temas
- Utilidades de conexión para Aurora MySQL
- Conexión a Aurora MySQL con la utilidad MySQL
- Conexión a Aurora MySQL con el controlador JDBC de Amazon Web Services (AWS)
- Conexión a Aurora MySQL con el controlador de Python de Amazon Web Services (AWS)
- Conexión a Aurora MySQL con el controlador ODBC de Amazon Web Services (AWS) para MySQL
- Conexión a Aurora MySQL mediante SSL
Utilidades de conexión para Aurora MySQL
A continuación se indican algunas de las utilidades de conexión que puede usar:
-
Línea de comando: puede conectarse a un clúster de base de datos Amazon Aurora usando herramientas como la utilidad de línea de comando de MySQL. Para obtener más información acerca del uso de la utilidad de MySQL, consulte mysql — the MySQL command-line client
(mysql: el cliente de línea de comandos de MySQL) en la documentación de MySQL. -
Interfaz gráfica de usuario (GUI): puede usar la utilidad MySQL Workbench para conectarse por medio de una interfaz de usuario. Para obtener más información, consulte la página Download MySQL Workbench
. -
Controladores de:AWS
Conexión a Aurora MySQL con la utilidad MySQL
Utilice el siguiente procedimiento: Supone que ha configurado el clúster de base de datos en una subred privada de su VPC. Se conecta mediante una instancia de Amazon EC2 que ha configurado según los tutoriales de Explicación: crear un servidor web y un clúster de base de datos de Amazon Aurora.
nota
Este procedimiento no requiere instalar el servidor web en el tutorial, pero sí instalar MariaDB 10.5.
Para conectarse a un clúster de base de datos mediante la utilidad MySQL
-
Inicie sesión en la instancia de EC2 que usa para conectarse a su clúster de datos.
Debería ver un resultado similar a este.
Last login: Thu Jun 23 13:32:52 2022 from
xxx.xxx.xxx.xxx
__| __|_ ) _| ( / Amazon Linux 2 AMI ___|\___|___| https://aws.amazon.com/amazon-linux-2/ [ec2-user@ip-10-0-xxx.xxx
~]$ -
Escriba el siguiente comando en el símbolo del sistema para conectarse a la instancia de base de datos principal del clúster de base de datos.
Para el parámetro
-h
, escriba el nombre de DNS del punto de enlace de la instancia principal. Para el parámetro-u
, sustituya el ID de usuario de una cuenta de usuario de base de datos.mysql -h
primary-instance-endpoint
.AWS_account
.AWS_Region
.rds.amazonaws.com -P 3306 -udatabase_user
-pPor ejemplo:
mysql -h my-aurora-cluster-instance.c1xy5example.123456789012.eu-central-1.rds.amazonaws.com -P 3306 -u admin -p
-
Ingrese la contraseña del usuario de la base de datos.
Debería ver un resultado similar a este.
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 1770 Server version: 8.0.23 Source distribution Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]>
-
Ingrese sus comandos SQL.
Conexión a Aurora MySQL con el controlador JDBC de Amazon Web Services (AWS)
El controlador JDBC de Amazon Web Services (AWS) se ha diseñado como un contenedor JDBC avanzado. Este contenedor complementa y amplía la funcionalidad de un controlador JDBC existente para ayudar a las aplicaciones a aprovechar las características de las bases de datos en clúster, como Aurora MySQL. El controlador se admite con el controlador Connector/J de la comunidad MySQL y el controlador Connector/J de la comunidad MariaDB.
Para instalar el controlador JDBC de AWS, añada el archivo .jar del controlador JDBC de AWS (ubicado en la aplicación CLASSPATH
) y conserve las referencias al controlador de la comunidad correspondiente. Actualice el prefijo de la URL de conexión correspondiente de la siguiente manera:
-
De
jdbc:mysql://
ajdbc:aws-wrapper:mysql://
-
De
jdbc:mariadb://
ajdbc:aws-wrapper:mariadb://
Para obtener más información sobre el controlador JDBC de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador JDBC de Amazon Web Services (AWS)
nota
La versión 3.0.3 de la utilidad MariaDB Connector/J deja de ser compatible con clústeres de base de datos de Aurora, por lo que recomendamos encarecidamente pasar al controlador JDBC de AWS.
Conexión a Aurora MySQL con el controlador de Python de Amazon Web Services (AWS)
El controlador de Python de Amazon Web Services (AWS) se ha diseñado como un contenedor de Python avanzado. Este contenedor complementa y amplía la funcionalidad del controlador de Psycopg de código abierto. El controlador de Python de AWS se admite con las versiones 3.8 y posteriores de Python. Puede instalar el paquete de aws-advanced-python-wrapper
mediante el comando pip
, junto con los paquetes de código abierto de psycopg
.
Para obtener más información sobre el controlador de Python de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador de Python de Amazon Web Services (AWS)
Conexión a Aurora MySQL con el controlador ODBC de Amazon Web Services (AWS) para MySQL
El controlador ODBC de AWS para MySQL es un controlador de cliente diseñado para la alta disponibilidad de Aurora MySQL. El controlador puede existir junto con el conector MySQL/controlador ODBC y es compatible con los mismos flujos de trabajo.
Para obtener más información sobre el controlador ODBC de AWS para MySQL e instrucciones completas para instalarlo y utilizarlo, consulte el repositorio GitHub del controlador ODBC de Amazon Web Services (AWS) para MySQL
Conexión a Aurora MySQL mediante SSL
Puede utilizar políticas el cifrado SSL en las conexiones a una instancia de base de datos de Aurora MySQL. Para obtener información, consulte Conexiones TLS a clústeres de base de datos de Aurora MySQL.
Para conectarse con SSL, use la utilidad MySQL como se describe en el siguiente procedimiento. Si utiliza la autenticación de base de datos de IAM, debe usar una conexión de SSL. Para obtener información, consulte Autenticación de bases de datos de IAM .
nota
Para conectarse al punto de enlace del clúster mediante SSL, la utilidad de conexión del cliente debe ser compatible con los nombres alternativos de firmante (SAN). Si la utilidad de conexión del cliente no admite SAN, puede conectarse directamente a las instancias del clúster de base de datos de Aurora. Para obtener más información acerca de los puntos de enlace de Aurora, consulte Conexiones de puntos de conexión de Amazon Aurora.
Para conectarse a un clúster de base de datos con SSL a través de la utilidad MySQL
-
Descargue la clave pública para el certificado de firma de Amazon RDS.
Para obtener más información acerca de cómo descargar certificados, consulte Uso de SSL/TLS para cifrar una conexión a un clúster de base de datos.
-
Escriba el siguiente comando en un símbolo del sistema para conectarse a la instancia principal de un clúster de base de datos con SSL a través de la utilidad MySQL. Para el parámetro
-h
, escriba el nombre de DNS del punto de enlace de la instancia principal. Para el parámetro-u
, sustituya el ID de usuario de una cuenta de usuario de base de datos. Para el parámetro--ssl-ca
, utilice el nombre del archivo de certificado de SSL que desee. Escriba la contraseña del usuario maestro cuando se le pida.mysql -h mycluster-primary.123456789012.us-east-1.rds.amazonaws.com -u
admin_user
-p --ssl-ca=[full path]
global-bundle.pem --ssl-verify-server-cert
Debería ver un resultado similar a este.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 350
Server version: 8.0.26-log MySQL Community Server (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
Para obtener instrucciones generales sobre la construcción de cadenas de conexión de RDS for MySQL y encontrar la clave pública para las conexiones SSL, consulte Conexión a una instancia de base de datos que ejecuta el motor de base de datos de MySQL.
Conexión a un clúster de base de datos Amazon Aurora PostgreSQL
Puede conectarse a una instancia de base de datos del clúster de base de datos de Amazon Aurora PostgreSQL con las mismas herramientas que utiliza para conectarse a una base de datos de PostgreSQL. Como parte de este proceso, utiliza la misma clave pública para conexiones de Capa de conexión segura (SSL). Puede usar el punto de enlace y la información de puerto de la instancia principal o las réplicas de Aurora del clúster de base de datos Aurora PostgreSQL en la cadena de conexión de cualquier script, utilidad o aplicación que se conecte a una instancia de base de datos PostgreSQL. En la cadena de conexión, especifique la dirección DNS del punto de enlace de la instancia principal o la réplica de Aurora como parámetro del host. Especifique el número de puerto del punto de enlace como parámetro del puerto.
Cuando tenga una conexión a una instancia de base de datos de su clúster de base de datos de Amazon Aurora PostgreSQL, podrá ejecutar cualquier comando de SQL que sea compatible con PostgreSQL.
En la vista de detalles del clúster de base de datos de Aurora PostgreSQL puede encontrar el nombre del punto de conexión del clúster, el estado, el tipo y el número de puerto. Puede utilizar el punto de conexión y número de puerto en su cadena de conexión de PostgreSQL. Por ejemplo, si un valor de punto de conexión es mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
, debe especificar los siguientes valores en una cadena de conexión de PostgreSQL:
-
Para el host o el nombre del host, especifique
mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com
-
Para el puerto, especifique
5432
o el valor del puerto que utilizó al crear el clúster de base de datos
El punto de enlace de clúster le conecta a la instancia principal del clúster de base de datos. Puede realizar operaciones de lectura y escritura con el punto de enlace de clúster. El clúster de base de datos también puede tener hasta 15 réplicas de Aurora que admiten acceso de solo lectura a los datos de su clúster de base de datos. Cada instancia de base de datos en el clúster de Aurora (esto es, la instancia principal y cada réplica de Aurora) tiene un punto de enlace único independiente del punto de enlace del clúster. Este punto de conexión le permite conectarse a una instancia de base de datos específica directamente en el clúster. El punto de conexión del clúster apunta siempre a la instancia principal. Si se produce un error en la instancia principal y se reemplaza, el punto de conexión del clúster apunta a la nueva instancia principal.
Para ver el punto de enlace del clúster (punto de enlace de escritor), elija Databases (Bases de datos) en la consola de Amazon RDS y elija el nombre del clúster de base de datos para mostrar sus detalles.
Utilidades de conexión para Aurora PostgreSQL
A continuación se indican algunas de las utilidades de conexión que puede usar:
-
Línea de comando: puede conectarse a clústeres de base de datos Aurora PostgreSQL usando herramientas como psql, el terminal interactivo de PostgreSQL. Para obtener más información acerca del uso del terminal interactivo de PostgreSQL, consulte psql
en la documentación de PostgreSQL. -
Interfaz gráfica de usuario (GUI): puede usar la utilidad pgAdmin para conectarse a clústeres de base de datos Aurora PostgreSQL por medio de una interfaz de usuario. Para obtener más información, consulte la página Download
en el sitio web de pgAdmin. -
Controladores de:AWS
Conexión a Aurora PostgreSQL con el controlador JDBC de Amazon Web Services (AWS)
El controlador JDBC de Amazon Web Services (AWS) se ha diseñado como un contenedor JDBC avanzado. Este contenedor complementa y amplía la funcionalidad de un controlador JDBC existente para ayudar a las aplicaciones a aprovechar las características de las bases de datos en clúster, como Aurora PostgreSQL. El controlador se admite con el controlador pgJDBC de la comunidad.
Para instalar el controlador JDBC de AWS, añada el archivo .jar del controlador JDBC de AWS (ubicado en la aplicación CLASSPATH
) y conserve las referencias al controlador de la comunidad pgJDBC. Actualice el prefijo de la URL de conexión de jdbc:postgresql://
a jdbc:aws-wrapper:postgresql://
.
Para obtener más información sobre el controlador JDBC de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador JDBC de Amazon Web Services (AWS)
Conexión a Aurora PostgreSQL con el controlador de Python de Amazon Web Services (AWS)
El controlador de Python de Amazon Web Services (AWS) se ha diseñado como un contenedor Python avanzado. Este contenedor complementa y amplía la funcionalidad del controlador de Psycopg de código abierto. El controlador de Python de AWS se admite con las versiones 3.8 y posteriores de Python. Puede instalar el paquete de aws-advanced-python-wrapper
mediante el comando pip
, junto con los paquetes de código abierto de psycopg
.
Para obtener más información sobre el controlador de Python de AWS e instrucciones completas para utilizarlo, consulte el repositorio GitHub del controlador de Python de Amazon Web Services (AWS)
Solución de errores de conexión de Aurora
Las causas frecuentes de errores de conexión a un nuevo clúster de base de datos de Aurora son las siguientes:
-
El grupo de seguridad de la VPC no permite el acceso: su VPC debe permitir conexiones desde el dispositivo o desde una instancia Amazon EC2 mediante la configuración adecuada del grupo de seguridad en la VPC. Para resolverlo, modifique las reglas de entrada del grupo de seguridad de la VPC para permitir conexiones. Para ver un ejemplo, consulte Tutorial: Creación de una VPC para utilizarla con un clúster de base de datos (solo IPv4).
-
Puerto bloqueado por reglas de firewall – Compruebe el valor del puerto configurado para el clúster de Aurora base de datos. Si una regla de firewall bloquea ese puerto, puede volver a crear la instancia utilizando un puerto diferente.
-
Configuración IAM incompleta o incorrecta – Si ha creado la Aurora instancia de base de datos para utilizar la autenticación IAM–basada, asegúrese de que está configurada correctamente. Para obtener más información, consulte Autenticación de bases de datos de IAM .
Para obtener más información acerca de cómo solucionar problemas de conexión de base de datos Aurora, consulte No puede conectarse a la instancia de base de datos de Amazon RDS.