Connexion à un cluster de bases de données Amazon Aurora - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connexion à un cluster de bases de données Amazon Aurora

Vous pouvez vous connecter à un cluster de bases de données Aurora à l’aide des mêmes outils que ceux que vous utilisez pour vous connecter à une base de données MySQL ou PostgreSQL. Vous spécifiez une chaîne de connexion avec n’importe quel script, utilitaire ou application qui se connecte à une instance de base de données MySQL ou PostgreSQL. Vous utilisez la même clé publique que celle utilisée pour les connexions SSL (Secure Sockets Layer).

Dans la chaîne de connexion, vous utilisez généralement les informations sur le port et l’hôte depuis des points de terminaison spéciaux associés au cluster de bases de données. Avec ces points de terminaison, vous pouvez utiliser les mêmes paramètres de connexion, peu importe le nombre d’instances de base de données dans le cluster. Pour les tâches spécialisées telles que le dépannage, vous pouvez utiliser les informations sur l’hôte et le port depuis une instance de base de données spécifique dans votre cluster de bases de données Aurora.

Note

Pour les clusters de bases de données Aurora Serverless, vous vous connectez au point de terminaison de base de données plutôt qu’à l’instance de base de données. Vous pouvez trouver le point de terminaison de base de données pour un cluster Aurora Serverless dans l’onglet Connectivité et sécurité de la AWS Management Console. Pour plus d’informations, consultez Utilisation d’Amazon Aurora Serverless v1.

Quel que soit le moteur de base de données Aurora et les outils spécifiques que vous utilisez pour travailler avec le cluster ou l’instance, le point de terminaison doit être accessible. Un cluster de bases de données Aurora ne peut être créé que dans un cloud privé virtuel (VPC) basé sur le service Amazon VPC. Cela signifie que vous accédez au point de terminaison depuis l’intérieur ou depuis l’extérieur du VPC en utilisant l’une des approches suivantes.

  • Accéder au cluster de bases de données Aurora à l’intérieur du VPC : activez l’accès au cluster de bases de données Aurora via le VPC. Pour ce faire, modifiez les règles entrantes sur le groupe Sécurité du VPC afin d’autoriser l’accès à votre cluster de bases de données Aurora spécifique. Pour en savoir plus, notamment apprendre comment configurer votre VPC pour différents scénarios de cluster de bases de données Aurora, consultez VPC Virtual Private Cloud Amazon et Amazon Aurora.

  • Accéder au cluster de bases de données Aurora en dehors du VPC : pour accéder à un cluster de bases de données Aurora depuis l’extérieur du VPC, utilisez l’adresse de point de terminaison publique du cluster de bases de données.

Pour plus d’informations, consultez Dépannage des problèmes de connexion d’Aurora.

Connexion aux clusters de bases de données Aurora avec les pilotes AWS

La suite de pilotes AWS a été conçue pour accélérer les temps de bascule et de basculement, ainsi que pour l’authentification avec AWS Secrets Manager, AWS Identity and Access Management (IAM) et l’identité fédérée. Les pilotes AWS s’appuient sur la surveillance de l’état du cluster de bases de données et sur la connaissance de la topologie du cluster pour déterminer le nouvel enregistreur. Cette approche réduit les temps de bascule et de basculement à moins de 10 secondes, contre des dizaines de secondes pour les pilotes open source.

Le tableau suivant répertorie les fonctionnalités prises en charge pour tous les pilotes. À mesure que de nouvelles fonctionnalités de service sont introduites, l’objectif de la suite de pilotes AWS est de prendre en charge ces fonctionnalités de service de manière intégrée.

Fonctionnalité Pilote AWS JDBC Pilote AWS Python Pilote AWS ODBC pour MySQL Wrapper AWS Advanced NodeJS
Prise en charge du basculement Oui Oui Oui Oui
Surveillance améliorée du basculement Oui Oui Oui Oui
Répartition lecture/écriture Oui Oui Non Oui
Suivi des connexions Aurora Oui Oui Non Oui
Connexion aux métadonnées du pilote Oui N/A N/A N/A
Télémétrie Oui Oui Non Oui
Secrets Manager Oui Oui Oui Oui
Authentification IAM Oui Oui Oui Oui
Identité fédérée (AD FS) Oui Oui Non Oui
Identité fédérée (Okta) Oui Oui Oui Oui
Base de données Aurora PostgreSQL Limitless Oui (Aurora PostgreSQL uniquement) Non Non Oui (Aurora PostgreSQL uniquement)

Pour plus d’informations sur les pilotes AWS, consultez le pilote correspondant au langage utilisé pour votre cluster de bases de données Aurora MySQL ou Aurora PostgreSQL.

Connexion à un cluster de bases de données Amazon Aurora MySQL

Pour vous authentifier auprès de votre cluster de bases de données Aurora MySQL, vous pouvez utiliser l’authentification par nom d’utilisateur et mot de passe MySQL ou l’authentification de base de données AWS Identity and Access Management (IAM). Pour plus d’informations sur l’utilisation de l’authentification par nom d’utilisateur et mot de passe MySQL, consultez User Account Management dans la documentation MySQL. Pour plus d’informations sur l’utilisation de l’authentification de base de données IAM, consultez Authentification de base de données IAM.

Une fois que vous êtes connecté à votre cluster de bases de données Amazon Aurora compatible avec MySQL 8.0, vous pouvez exécuter les commandes SQL compatibles avec MySQL version 8.0. La version minimale compatible est MySQL 8.0.23. Pour en savoir plus sur la syntaxe SQL de MySQL 8.0, consultez le manuel de référence MySQL 8.0. Pour en savoir plus sur les limitations qui s’appliquent à Aurora MySQL 3, consultez Comparaison d’Aurora MySQL version 3 et de MySQL 8.0 Community Edition.

Une fois que vous êtes connecté à votre cluster de bases de données Amazon Aurora compatible avec MySQL 5.7, vous pouvez exécuter les commandes SQL compatibles avec MySQL version 5.7. Pour plus d’informations sur la syntaxe SQL de MySQL 5.7, consultez le manuel de référence MySQL 5.7. Pour plus d’informations sur les limitations qui s’appliquent à Aurora MySQL 5.7, consultez Aurora MySQL version 2 compatible avec MySQL 5.7.

Note

Pour obtenir un guide pratique et détaillé sur la connexion à un cluster de bases de données Amazon Aurora MySQL, consultez le manuel de gestion des connexions Aurora.

Dans la vue détaillée de votre cluster de bases de données, vous pouvez trouver le point de terminaison du cluster, que vous pouvez utiliser dans votre chaîne de connexion MySQL. Le point de terminaison se compose du nom de domaine et du port de votre cluster de bases de données. Par exemple, si la valeur d’un point de terminaison est mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com:3306, spécifiez les valeurs suivantes dans une chaîne de connexion MySQL :

  • Pour un hôte ou nom d’hôte, spécifiez mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Pour le port, spécifiez 3306 ou la valeur de port que vous avez utilisée lors de la création du cluster de bases de données

Le point de terminaison du cluster vous connecte à l’instance principale du cluster de bases de données. Vous pouvez effectuer des opérations de lecture et d’écriture à l’aide du point de terminaison du cluster. Votre cluster de bases de données peut aussi avoir jusqu’à 15 réplicas Aurora qui prennent en charge l’accès en lecture seule aux données de votre cluster de bases de données. L’instance principale et chaque réplica Aurora possèdent un point de terminaison unique, qui est indépendant du point de terminaison du cluster et vous permet de vous connecter directement à une instance de base de données spécifique du cluster. Le point de terminaison du cluster pointe toujours vers l’instance principale. Si l’instance principale échoue et est remplacée, le point de terminaison du cluster pointe vers la nouvelle instance principale.

Pour afficher le point de terminaison du cluster (point de terminaison d’enregistreur), choisissez Bases de données dans la console Amazon RDS et choisissez le nom du cluster de bases de données dont vous souhaitez afficher les détails.

Volet de détails du point de terminaison d’enregistreur Aurora MySQL affichant l’adresse de connexion pour la connectivité à la base de données.

Utilitaires de connexion pour Aurora MySQL

Vous trouverez ci-après certains des utilitaires de connexion que vous pouvez utiliser :

Connexion à Aurora MySQL à l’aide de l’utilitaire MySQL

Utilisez la procédure suivante. Elle suppose que vous avez configuré votre cluster de bases de données dans un sous-réseau privé de votre VPC. Vous vous connectez à l’aide d’une instance Amazon EC2 que vous avez configurée conformément aux didacticiels de Didacticiel : Créer un serveur web et une cluster de base de données Amazon Aurora.

Note

Cette procédure n’exige pas d’installer le serveur Web dans le didacticiel, mais elle exige d’installer MariaDB 10.5.

Pour vous connecter à un cluster de bases de données à l’aide de l’utilitaire MySQL
  1. Connectez-vous à l’instance EC2 que vous utilisez pour vous connecter à votre cluster de bases de données.

    Vous devez visualiser des résultats similaires à ce qui suit.

    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 ~]$
  2. Saisissez la commande suivante dans l’invite de commande pour vous connecter à l’instance de base de données principale de votre cluster de bases de données.

    Pour le paramètre -h, remplacez le nom DNS du point de terminaison de votre instance principale. Pour le paramètre -u, remplacez l’ID d’utilisateur d’un compte d’utilisateur de base de données.

    mysql -h primary-instance-endpoint.AWS_account.AWS_Region.rds.amazonaws.com -P 3306 -u database_user -p

    Par exemple :

    mysql -h my-aurora-cluster-instance.c1xy5example.123456789012.eu-central-1.rds.amazonaws.com -P 3306 -u admin -p
  3. Saisissez le mot de passe de l’utilisateur de la base de données.

    Vous devez visualiser des résultats similaires à ce qui suit.

    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)]>
  4. Saisissez vos commandes SQL.

Connexion à Aurora MySQL avec le pilote JDBC Amazon Web Services (AWS)

Le pilote JDBC Amazon Web Services (AWS) est conçu comme un wrapper JDBC avancé. Ce wrapper complète et étend les fonctionnalités d’un pilote JDBC existant pour aider les applications à tirer parti des fonctionnalités des bases de données en cluster telles qu’Aurora MySQL. Ce pilote est compatible avec les pilotes communautaires MySQL Connector/J et MariaDB Connector/J.

Pour installer le pilote JDBC AWS, ajoutez le fichier .jar du pilote JDBC AWS (situé dans l’application CLASSPATH) et conservez les références au pilote communautaire correspondant. Mettez à jour le préfixe d’URL de connexion correspondant comme suit :

  • jdbc:mysql:// sur jdbc:aws-wrapper:mysql://

  • jdbc:mariadb:// sur jdbc:aws-wrapper:mariadb://

Pour en savoir plus sur le pilote JDBC AWS et pour obtenir des instructions d’utilisation complètes, consultez le référentiel GitHub du pilote JDBC Amazon Web Services (AWS).

Note

La version 3.0.3 de l’utilitaire MariaDB Connector/J supprime la prise en charge des clusters de bases de données Aurora. Nous recommandons donc vivement de passer au pilote AWS JDBC.

Connexion à Aurora MySQL avec le pilote Python Amazon Web Services (AWS)

Le pilote Python Amazon Web Services (AWS) est conçu comme un wrapper Python avancé. Ce wrapper complète et étend les fonctionnalités du pilote open source Psycopg. Le pilote AWS Python prend en charge les versions 3.8 et ultérieures de Python. Vous pouvez installer le package aws-advanced-python-wrapper à l’aide de la commande pip, en même temps que les packages psycopg open source.

Pour en savoir plus sur le pilote Python AWS et pour obtenir des instructions d’utilisation complètes, consultez le référentiel GitHub du pilote Python Amazon Web Services (AWS).

Connexion à Aurora MySQL avec le pilote ODBC Amazon Web Services (AWS) pour MySQL

Le pilote AWS ODBC pour MySQL est un pilote client conçu pour la haute disponibilité d’Aurora MySQL. Il peut coexister avec le pilote MySQL Connector/ODBC et est compatible avec les mêmes flux de travail.

Pour en savoir plus sur le pilote AWS ODBC pour MySQL et pour obtenir des instructions d’utilisation complètes, consultez le Référentiel GitHub du pilote ODBC Amazon Web Services (AWS) pour MySQL.

Connexion à Aurora MySQL avec le wrapper Amazon Web Services (AWS) Advanced NodeJS

Le wrapper AWS Advanced NodeJS complète et étend les fonctionnalités d’un pilote NodeJS existant. Il permet aux applications de tirer parti des fonctionnalités des bases de données en cluster telles qu’Aurora MySQL.

Pour en savoir plus sur le wrapper AWS Advanced NodeJS et pour obtenir des instructions d’utilisation complètes, consultez le dépôt GitHub du wrapper Amazon Web Services (AWS) Advanced NodeJS.

Connexion à Aurora MySQL avec SSL

Vous pouvez utiliser le chiffrement SSL sur les connexions à une instance de base de données Aurora MySQL. Pour plus d’informations, consultez Connexions TLS aux clusters de bases de données Aurora MySQL.

Pour vous connecter avec SSL, choisissez l’utilitaire MySQL comme décrit dans la procédure suivante. Si vous utilisez l’authentification de base de données IAM, vous devez utiliser une connexion SSL. Pour plus d’informations, consultez Authentification de base de données IAM.

Note

Pour se connecter au point de terminaison du cluster à l’aide de SSL, votre utilitaire de connexion client doit prendre en charge les SAN (Subject Alternative Names). Si votre utilitaire de connexion client ne prend pas en charge les SAN, vous pouvez vous connecter directement aux instances de votre cluster DB Aurora. Pour plus d’informations sur les points de terminaison Aurora, consultez Connexions de point de terminaison Amazon Aurora.

Pour vous connecter à un cluster de bases de données avec SSL en utilisant l’utilitaire MySQL

  1. Téléchargez la clé publique du certificat de signature Amazon RDS.

    Pour plus d’informations sur le téléchargement de certificats, consultez Utilisation SSL/TLS pour chiffrer une connexion à une de clusters.

  2. Saisissez la commande suivante dans une invite de commande pour vous connecter à l’instance principale d’un cluster de bases de données avec SSL en utilisant l’utilitaire MySQL. Pour le paramètre -h, remplacez le nom DNS du point de terminaison de votre instance principale. Pour le paramètre -u, remplacez l’ID d’utilisateur d’un compte d’utilisateur de base de données. Pour le paramètre --ssl-ca, remplacez le nom de fichier du certificat SSL par le nom approprié. Entrez le mot de passe de l’utilisateur maître quand vous y êtes invité.

    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

Vous devez visualiser des résultats similaires à ce qui suit.

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>

Pour obtenir des instructions générales sur la construction de chaînes de connexion RDS for MySQL et sur la recherche de la clé publique des connexions SSL, consultez Connexion à une instance de base de données exécutant le moteur de base de données MySQL.

Connexion à un cluster de bases de données Amazon Aurora PostgreSQL

Vous pouvez vous connecter à une instance de base de données dans un cluster de bases de données Amazon Aurora PostgreSQL à l’aide des mêmes outils que ceux que vous utilisez pour vous connecter à une base de données PostgreSQL. Dans ce cadre, vous utilisez la même clé publique que celle utilisée pour les connexions SSL (Secure Sockets Layer). Vous pouvez utiliser les informations de point de terminaison et de port de l’instance principale ou des réplicas Aurora de votre cluster de bases de données Aurora PostgreSQL dans la chaîne de connexion d’un script, d’un utilitaire ou d’une application qui se connecte à une instance de base de données PostgreSQL. Dans la chaîne de connexion, spécifiez l’adresse DNS du point de terminaison de l’instance principale ou du réplica Aurora comme paramètre d’hôte. Spécifiez le numéro de port du point de terminaison comme paramètre de port.

Lorsque vous êtes connecté à une instance de base de données dans votre cluster de bases de données Amazon Aurora PostgreSQL, vous pouvez exécuter toute commande SQL compatible avec PostgreSQL.

Vous pouvez trouver le nom, le statut, le type et le numéro de port du point de terminaison du cluster dans la vue des détails du cluster de bases de données Aurora PostgreSQL. Vous pouvez utiliser le point de terminaison et le numéro de port dans votre chaîne de connexion PostgreSQL. Par exemple, si la valeur d’un point de terminaison est mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com, spécifiez les valeurs suivantes dans une chaîne de connexion PostgreSQL :

  • Pour un hôte ou nom d’hôte, spécifiez mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Pour le port, spécifiez 5432 ou la valeur de port que vous avez utilisée lors de la création du cluster de bases de données

Le point de terminaison du cluster vous connecte à l’instance principale du cluster de bases de données. Vous pouvez effectuer des opérations de lecture et d’écriture à l’aide du point de terminaison du cluster. Votre cluster de bases de données peut aussi avoir jusqu’à 15 réplicas Aurora qui prennent en charge l’accès en lecture seule aux données de votre cluster de bases de données. Chaque instance de base de données du cluster Aurora (c’est-à-dire, l’instance principale et chaque réplica Aurora) possède un point de terminaison unique qui est indépendant du point de terminaison du cluster. Ce point de terminaison unique vous permet de vous connecter directement à une instance de base de données spécifique dans le cluster. Le point de terminaison du cluster pointe toujours vers l’instance principale. Si l’instance principale échoue et est remplacée, le point de terminaison du cluster pointe vers la nouvelle instance principale.

Pour afficher le point de terminaison du cluster (point de terminaison d’enregistreur), choisissez Bases de données dans la console Amazon RDS et choisissez le nom du cluster de bases de données dont vous souhaitez afficher les détails.

Point de terminaison d’enregistreur Aurora PostgreSQL.

Utilitaires de connexion pour Aurora PostgreSQL

Vous trouverez ci-après certains des utilitaires de connexion que vous pouvez utiliser :

Connexion à Aurora PostgreSQL avec le pilote Amazon Web Services (AWS) JDBC

Le pilote JDBC Amazon Web Services (AWS) est conçu comme un wrapper JDBC avancé. Ce wrapper complète et étend les fonctionnalités d’un pilote JDBC existant pour aider les applications à tirer parti des fonctionnalités des bases de données en cluster telles qu’Aurora PostgreSQL. Le pilote est compatible avec le pilote communautaire pgJDBC.

Pour installer le pilote AWS JDBC, ajoutez le fichier .jar du pilote AWS JDBC (situé dans l’application CLASSPATH) et conservez les références au pilote communautaire pgJDBC. Mettez à jour le préfixe de l’URL de connexion en remplaçant jdbc:postgresql:// par jdbc:aws-wrapper:postgresql://.

Pour en savoir plus sur le pilote JDBC AWS et pour obtenir des instructions d’utilisation complètes, consultez le référentiel GitHub du pilote JDBC Amazon Web Services (AWS).

Connexion à Aurora PostgreSQL avec le pilote Amazon Web Services (AWS) Python

Le pilote Python Amazon Web Services (AWS) est conçu comme un wrapper Python avancé. Ce wrapper complète et étend les fonctionnalités du pilote open source Psycopg. Le pilote AWS Python prend en charge les versions 3.8 et ultérieures de Python. Vous pouvez installer le package aws-advanced-python-wrapper à l’aide de la commande pip, en même temps que les packages psycopg open source.

Pour en savoir plus sur le pilote Python AWS et pour obtenir des instructions d’utilisation complètes, consultez le référentiel GitHub du pilote Python Amazon Web Services (AWS).

Connexion à Aurora PostgreSQL avec le wrapper Amazon Web Services (AWS) Advanced NodeJS

Le wrapper AWS Advanced NodeJS complète et étend les fonctionnalités d’un pilote NodeJS existant. Il permet aux applications de tirer parti des fonctionnalités des bases de données en cluster telles qu’Aurora PostgreSQL.

Pour en savoir plus sur le wrapper AWS Advanced NodeJS et pour obtenir des instructions d’utilisation complètes, consultez le dépôt GitHub du wrapper Amazon Web Services (AWS) Advanced NodeJS.

Dépannage des problèmes de connexion d’Aurora

Les causes les plus courantes d’échec de connexion à un nouveau cluster de bases de données Aurora sont les suivantes :

  • Security group in the VPC doesn’t allow access (Le groupe de sécurité dans le VPC n’autorise pas l’accès) – Votre VPC doit autoriser les connexions à partir de votre périphérique ou d’une instance Amazon EC2 grâce à une configuration adéquate du groupe de sécurité dans le VPC. Pour résoudre ce problème, modifiez les règles de trafic entrant du groupe de sécurité de votre VPC pour autoriser les connexions. Pour obtenir un exemple, consultez Tutoriel : créer un VPC à utiliser avec un cluster de bases de données (IPv4 uniquement).

  • Port bloqué par les règles de pare-feu – Vérifiez la valeur du port configuré pour votre cluster de bases de données Aurora. Si une règle de pare-feu bloque ce port, vous pouvez recréer l’instance à l’aide d’un autre port.

  • Configuration IAM incomplète ou incorrecte – Si vous avez créé votre instance de base de données Aurora pour utiliser l’authentification basée sur IAM, assurez-vous qu’elle est correctement configurée. Pour plus d’informations, consultez Authentification de base de données IAM.

Pour plus d’informations sur la résolution des problèmes de connexion de base de données Aurora, consultez Impossible de se connecter à l’instance de base de données Amazon RDS.