Herstellen einer Verbindung mit einem Amazon Aurora-DB-Cluster - Amazon Aurora

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Herstellen einer Verbindung mit einem Amazon Aurora-DB-Cluster

Sie können mit denselben Tools eine Verbindung zu einer DB-Instance in einem Aurora-DB-Cluster einrichten, die Sie UCH für die Verbindung mit einer MySQL- oder PostgreSQL-Datenbank verwenden. Sie geben eine Verbindungszeichenfolge mit einem beliebigen Skript, einem Hilfsprogramm oder einer Anwendung an, das/die sich mit einer MySQL- oder PostgreSQL-DB-Instance verbindet. Hierbei können Sie den gleichen öffentlichen Schlüssel für Secure Sockets Layer (SSL)-Verbindungen nutzen.

In der Verbindungszeichenfolge verwenden Sie typischerweise die Host- und Port-Informationen von besonderen mit dem DB-Cluster verbundenen Endpunkten. Mit diesen Endpunkten können Sie dieselben Verbindungsparameter verwenden, unabhängig davon, wie viele DB-Instances sich in dem Cluster befinden. Sie können die Host- und Port-Informationen aus einer spezifischen DB-Instance in Ihrem Aurora-DB_Cluster für spezielle Aufgaben wie die Fehlerbehebung verwenden.

Anmerkung

Bei Aurora Serverless-DB-Clustern stellen Sie eine Verbindung zum Datenbank-Endpunkt statt mit der DB-Instance her. Sie finden den Datenbank-Endpunkt für einen Aurora Serverless-DB-Cluster auf der Registerkarte Connectivity & security (Konnektivität und Sicherheit) von AWS Management Console. Weitere Informationen finden Sie unter Verwenden von Amazon Aurora Serverless v1.

Unabhängig von der Aurora-DB-Engine und spezifischen Tools, die Sie für die Arbeit mit dem DB-Cluster oder der Instance verwenden, muss der Endpunkt zugänglich sein. Ein Amazon Aurora-DB-Cluster kann in einer Virtual Private Cloud (VPC) nur basierend auf dem Amazon VPC-Service erstellt werden. Das bedeutet, dass Sie mit einem der folgenden Ansätze entweder innerhalb der VPC oder außerhalb der VPC auf den Endpunkt zugreifen.

  • Greifen Sie auf den Amazon Aurora-DB-Cluster innerhalb der VPC zu – Aktivieren Sie den Zugriff auf den Amazon Aurora-DB-Cluster über die VPC. Sie tun dies, indem Sie die Inbound-Regeln der Sicherheitsgruppe für die VPC bearbeiten, um den Zugriff auf Ihren spezifischen Aurora-DB-Cluster zu ermöglichen. Weitere Informationen, einschließlich der Konfiguration Ihrer VPC für verschiedene Aurora-DB-Cluster-Szenarien, finden Sie unter Amazon Virtual Private Cloud VPCs und Amazon Aurora.

  • Greifen Sie auf den Amazon Aurora-DB-Cluster außerhalb der VPC zu –Verwenden Sie die öffentliche Endpunktadresse des Amazon-Aurora-DB-Clusters, um von außerhalb der VPC auf einen Amazon-Aurora-DB-Cluster zuzugreifen.

Weitere Informationen finden Sie unter Behebung von Aurora-Verbindungsfehlern.

Herstellen einer Verbindung mit einem Amazon Aurora MySQL-DB-Cluster

Um sich bei Ihrem Aurora MySQL-DB-Cluster zu authentifizieren, können Sie entweder die MySQL-Authentifizierung mit Benutzername und Passwort oder die AWS Identity and Access Management (IAM) -Datenbankauthentifizierung verwenden. Weitere Informationen über die Verwendung der MySQL-Benutzernamen- und Passwort-Authentifizierung finden Sie unter Access Control and Account Management in der MySQL-Dokumentation. Weitere Informationen zur Verwendung der IAM-Datenbankauthentifizierung finden Sie unter IAM-Datenbankauthentifizierung.

Wenn Sie eine Verbindung mit Ihrem Amazon-Aurora-DB-Cluster mit MySQL 8.0-Kompatibilität hergestellt haben, können Sie SQL-Befehle ausführen, die mit MySQL 8.0 kompatibel sind. Die minimale kompatible Version ist MySQL 8.0.23. Weitere Informationen zur MySQL 8.0-SQL-Syntax finden Sie im MySQL 8.0-Referenzhandbuch. Informationen zu Einschränkungen für Aurora-MySQL-Version 3 finden Sie unter Vergleich von Aurora-MySQL-Version 3 und MySQL 8.0 Community Edition.

Wenn Sie eine Verbindung mit Ihrem Amazon-Aurora-DB-Cluster mit MySQL 5.7-Kompatibilität hergestellt haben, können Sie SQL-Befehle ausführen, die mit MySQL 5.7 kompatibel sind. Weitere Informationen zur MySQL 5.7-SQL-Syntax finden Sie im MySQL 5.7-Referenzhandbuch. Informationen zu Einschränkungen für Aurora MySQL 5.7 finden Sie unter Aurora-MySQL-Version 2, kompatibel mit MySQL 5.7.

Anmerkung

Eine nützliche und detaillierte Anleitung für die Herstellung von Verbindungen mit einem Amazon Aurora MySQL-DB-Cluster finden Sie im Handbuch für das Aurora-Verbindungsmanagement.

In der Detailansicht für Ihren DB-Cluster finden Sie den Cluster-Endpunkt, den Sie in Ihrer MySQL-Verbindungszeichenfolge verwenden können. Der Endpunkt besteht aus dem Domänenamen und dem Port für Ihr DB-Cluster. Wenn beispielsweise ein Endpunktwert mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com:3306 lautet, sollten Sie die folgenden Werte in einer MySQL-Verbindungszeichenfolge angeben:

  • Geben Sie als Host oder Host-Namen, an mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Geben Sie für Port 3306 oder den Port-Wert an, den Sie beim Erstellen des DB-Clusters verwendet haben

Der Cluster-Endpunkt verbindet Sie mit der primären Instance für das DB-Cluster. Sie können sowohl Lese- als auch Schreiboperationen mithilfe des Cluster-Endpunkts durchführen. Ihr DB-Cluster kann darüber hinaus bis zu 15 Aurora-Replicas besitzen, die einen schreibgeschützten Zugriff auf die Daten im DB-Cluster unterstützen. Die primäre Instance und jede Aurora-Replica haben jeweils einen eindeutigen Endpunkt, der unabhängig vom Cluster-Endpunkt ist, und Ihnen ermöglicht sich mit einer bestimmten DB-Instance im Cluster direkt zu verbinden. Der Cluster-Endpunkt verweist immer auf die primäre Instance. Falls die primäre Instance ausfällt und ersetzt wird, verweist der Cluster-Endpunkt auf die neue primäre Instance.

Um den Cluster-Endpunkt (Writer-Endpunkt) anzuzeigen, wählen Sie Databases (Datenbanken) in der Amazon RDS-Konsole und anschließend den Namen des DB-Clusters aus, um die Details des DB-Clusters anzuzeigen.


                Amazon Aurora Aurora-Endpunkte.

Hilfsprogramme für die Herstellung von Verbindungen für Aurora MySQL

Unter anderem können Sie dazu die folgenden Verbindungsdienstprogramme verwenden:

  • Befehlszeile – Sie können mittels Tools wie dem MySQL-Befehlszeilen-Hilfsprogramm Verbindungen mit einem Amazon-Aurora-DB-Cluster herstellen: Weitere Informationen zur Verwendung des MySQL-Hilfsprogramms finden Sie unter mysql – The MySQL Command Line Tool in der MySQL-Dokumentation.

  • GUI – Sie können das Hilfsprogramm MySQL Workbench verwenden, um eine Verbindung über eine Benutzeroberfläche herzustellen. Weitere Informationen finden Sie auf der Seite Download MySQL Workbench.

  • Anwendungen — Sie können den Amazon Web Services (AWS) JDBC-Treiber verwenden, um Ihre Client-Anwendungen mit einem Aurora MySQL-DB-Cluster zu verbinden. Weitere Informationen finden Sie unter Verbindung mit dem Amazon Web Services (AWS) JDBC-Treiber herstellen.

Verbinden mit Aurora MySQL über das MySQL-Dienstprogramm

Gehen Sie wie folgt vor: Es wird davon ausgegangen, dass Sie Ihren DB-Cluster in einem privaten Subnetz der VPC konfiguriert haben. Sie stellen eine Verbindung mit einer Amazon-EC2-Instance her, die Sie gemäß den Tutorials in Tutorial: Erstellen eines Webservers und einer eines Amazon Aurora-DB-Clusters konfiguriert haben.

Anmerkung

Für dieses Verfahren ist die Installation des Webservers im Tutorial nicht nötig, erfordert jedoch die Installation von MariaDB 10.5.

So stellen Sie eine Verbindung mit einem DB-Cluster mit dem MySQL-Dienstprogramm her
  1. Melden Sie sich bei der EC2-Instance an, die Sie verwenden, um eine Verbindung mit Ihrem DB-Cluster herzustellen.

    Die Ausgabe sollte in etwa wie folgt aussehen:

    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. Geben Sie den folgenden Befehl in die Befehlszeile ein, um eine Verbindung mit der primären DB-Instance Ihres DB-Clusters herzustellen.

    Ersetzen Sie für den -h-Parameter den Endpunkt-DNS-Namen für Ihre primäre Instance. Ersetzen Sie den -u-Parameter durch die Benutzer-ID eines Datenbankbenutzerkontos.

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

    Beispiel:

    mysql -h my-aurora-cluster-instance.c1xy5example.123456789012.eu-central-1.rds.amazonaws.com -P 3306 -u admin -p
  3. Geben Sie das Passwort für den Datenbankbenutzer ein.

    Die Ausgabe sollte in etwa wie folgt aussehen:

    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. Geben Sie Ihre SQL-Befehle ein.

Verbindung mit dem Amazon Web Services (AWS) JDBC-Treiber herstellen

Der Amazon Web Services (AWS) JDBC-Treiber wurde als fortschrittlicher JDBC-Wrapper neu gestaltet. Dieser Wrapper ergänzt und erweitert die Funktionalität eines vorhandenen JDBC-Treibers, um Anwendungen dabei zu helfen, die Funktionen geclusterter Datenbanken wie Aurora MySQL zu nutzen. Der Treiber ist Drop-In-kompatibel mit dem MySQL Connector/J-Treiber. Um Ihren Connector zu installieren oder zu aktualisieren, ersetzen Sie die .jar-Datei des MySQL-Connectors (im CLASSPATH der Anwendung) durch die .jar-Datei des AWS JDBC-Treibers und aktualisieren Sie das Verbindungs-URL-Präfix von bis. jdbc:mysql:// jdbc:aws-wrapper:mysql://

Der AWS JDBC-Treiber nutzt die Failover-Funktionen von Aurora MySQL voll aus. Im Falle eines Failovers fragt der Treiber den Cluster direkt nach der neuen Topologie ab, anstatt die DNS-Auflösung zu verwenden. Durch die direkte Abfrage des Clusters kann der Treiber auf zuverlässige und vorhersehbare Weise schneller eine Verbindung zum neuen Primärserver herstellen. Dieser Ansatz hilft, mögliche Verzögerungen durch die DNS-Auflösung zu vermeiden.

Weitere Informationen zum AWS JDBC-Treiber und vollständige Anweisungen zu seiner Verwendung finden Sie im Amazon Web Services (AWS) JDBC-Treiber-Repository. GitHub

Der AWS JDBC-Treiber unterstützt die IAM-Datenbankauthentifizierung. Weitere Informationen finden Sie unter AWS IAM-Authentifizierungs-Plug-In im JDBC-Treiber-Repository. AWS GitHub Weitere Informationen zur IAM-Datenbankauthentifizierung finden Sie in IAM-Datenbankauthentifizierung.

Anmerkung

Version 3.0.3 des Dienstprogramms MariaDB Connector/J stellt die Unterstützung für Aurora-DB-Cluster ein. Wir empfehlen daher dringend, zum JDBC-Treiber zu wechseln. AWS Der AWS JDBC-Treiber bietet eine verbesserte Failover-Geschwindigkeit für Aurora MySQL-DB-Cluster.

Der Support für den AWS JDBC-Treiber für MySQL wird am 25. Juli 2024 eingestellt. Wir empfehlen, dass Sie vor diesem Datum mit der Verwendung des neuen AWS JDBC-Treibers beginnen. Weitere Informationen finden Sie unter Veröffentlichungszeitplan und Wartungsrichtlinie im Amazon Web Services JDBC Driver for GitHub MySQL-Repository.

Herstellen von Verbindungen über SSL für Aurora MySQL

Sie können SSL-Verschlüsselung für Verbindungen mit einer Aurora MySQL DB-Instance verwenden. Weitere Informationen finden Sie unter Verwenden von TLS mit DB-Clustern von Aurora MySQL.

Verwenden Sie das MySQL-Hilfsprogramm wie im folgenden Vorgang beschrieben, um eine Verbindung per SSL herzustellen. Wenn Sie die IAM-Datenbank-Authentifizierung nutzen, müssen Sie eine SSL-Verbindung verwenden. Weitere Informationen finden Sie unter IAM-Datenbankauthentifizierung.

Anmerkung

Damit Sie sich mit dem Cluster-Endpunkt unter Verwendung von SSL verbinden können, muss Ihr Client-Verbindungshilfsprogramm Subject Alternative Names (SAN) unterstützen. Wenn Ihr Client-Verbindungshilfsprogramm kein SAN unterstützt, können Sie sich nicht direkt mit den Instances in Ihrem Aurora-DB-Cluster verbinden. Weitere Informationen zu Aurora-Endpunkten finden Sie unter Amazon Aurora-Verbindungsverwaltung.

So stellen Sie eine SSL-Verbindung mit einem DB-Cluster mittels des MySQL-Hilfsprogramms her:

  1. Laden Sie den öffentlichen Schlüssel für das Amazon RDS-Signaturzertifikat herunter.

    Informationen zum Herunterladen von Zertifikaten finden Sie unter Verwenden von SSL/TLS zum Verschlüsseln einer Verbindung zu einer .

  2. Geben Sie den folgenden Befehl in die Befehlszeile ein, um sich mit der primären Instance eines DB-Clusters per SSL mithilfe des MySQL-Hilfsprogramms zu verbinden. Ersetzen Sie für den -h-Parameter den Endpunkt-DNS-Namen für Ihre primäre Instance. Ersetzen Sie den -u-Parameter durch die Benutzer-ID eines Datenbankbenutzerkontos. Ersetzen Sie entsprechend den SSL-Zertifikatsnamen für den Parameter --ssl-ca. Geben Sie das Hauptbenutzerpasswort ein, falls Sie aufgefordert werden.

    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

Die Ausgabe sollte folgendermaßen oder ähnlich aussehen.

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>

Allgemeine Anweisungen zum Konstruieren von RDS for MySQL-Verbindungszeichenfolgen und zum Auffinden des öffentlichen Schlüssels für SSL-Verbindungen finden Sie unter Verbinden mit einer DB-Instance auf einer MySQL-Datenbank-Engine.

Herstellen einer Verbindung mit einem Amazon-Aurora-PostgreSQL-DB-Cluster

Sie können sich mit einer DB-Instance in Ihrem Amazon Aurora PostgreSQL-DB-Cluster mit denselben Tools verbinden, die Sie für die Verbindung mit einer PostgreSQL-Datenbank verwendet haben. Hierbei können Sie den gleichen öffentlichen Schlüssel für Secure Sockets Layer (SSL)-Verbindungen nutzen. Sie können die Endpunkt- und Portinformationen der primären Instance oder der Aurora-Replicas in Ihrem Aurora-PostgreSQL-DB-Cluster in der Verbindungszeichenfolge aller Skripts, Hilfsprogramme oder Anwendungen verwenden, die Verbindungen mit einer PostgreSQL-DB-Instance herstellen. Geben Sie in der Verbindungszeichenfolge die DNS-Adresse aus der primären Instance oder dem Endpunkt der Aurora-Replica als Host-Parameter an. Geben Sie die Portnummer aus dem Endpunkt als Portparameter an.

Sobald Sie eine Verbindung zu einer DB-Instance in Ihrem Amazon-Aurora-PostgreSQL-DB-Cluster hergestellt haben, können Sie einen beliebigen SQL-Befehl ausführen, der mit PostgreSQL kompatibel ist.

In der Detailansicht Ihres Aurora-PostgreSQL-DB-Clusters finden Sie den Cluster-Endpunktnamen, den Status, den Typ und die Portnummer. Sie verwenden den Endpunkt und die Portnummer in Ihrer PostgreSQL-Verbindungszeichenfolge. Wenn beispielsweise der Endpunktwert mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com lautet, geben Sie die folgenden Werte in der PostgreSQL-Verbindungszeichenfolge an:

  • Geben Sie als Host oder Host-Namen, an mycluster.cluster-123456789012.us-east-1.rds.amazonaws.com

  • Geben Sie für Port 5432 oder den Port-Wert an, den Sie beim Erstellen des DB-Clusters verwendet haben

Der Cluster-Endpunkt verbindet Sie mit der primären Instance für das DB-Cluster. Sie können sowohl Lese- als auch Schreiboperationen mithilfe des Cluster-Endpunkts durchführen. Ihr DB-Cluster kann darüber hinaus bis zu 15 Aurora-Replicas besitzen, die einen schreibgeschützten Zugriff auf die Daten im DB-Cluster unterstützen. Jede DB-Instance im Aurora-Cluster (d. h. die primäre Instance und alle Aurora-Replicas) besitzt einen eindeutigen Endpunkt, der vom Cluster-Endpunkt unabhängig ist. Über diesen eindeutigen Endpunkt können Sie eine direkte Verbindung zu einer bestimmten DB-Instance im Cluster herstellen. Der Cluster-Endpunkt verweist immer auf die primäre Instance. Falls die primäre Instance ausfällt und ersetzt wird, verweist der Cluster-Endpunkt auf die neue primäre Instance.

Um den Cluster-Endpunkt (Writer-Endpunkt) anzuzeigen, wählen Sie Databases (Datenbanken) in der Amazon RDS-Konsole und anschließend den Namen des DB-Clusters aus, um die Details des DB-Clusters anzuzeigen.


                Amazon Aurora-Details

Hilfsprogramme für die Herstellung von Verbindungen für Aurora PostgreSQL

Unter anderen können Sie dazu die folgenden Verbindungsdienstprogramme verwenden:

  • Befehlszeile: Sie können mittels Tools wie dem interaktiven PostgreSQL-Terminal psql Verbindungen mit DB-Clustern von Aurora PostgreSQL herstellen. Weitere Informationen über die Verwendung des interaktiven PostgreSQL-Terminals finden Sie unter psql in der PostgreSQL-Dokumentation.

  • GUI: Sie können das Dienstprogramm pgAdmin verwenden, um über eine Benutzeroberfläche Verbindungen mit DB-Clustern von Aurora PostgreSQL herzustellen. Weitere Informationen finden Sie auf der Seite Download der pgAdmin-Website.

  • Anwendungen: Sie können den AWS -JDBC-Treiber für PostgreSQL verwenden, um Anwendungen mit Ihren DB-Clustern von Aurora PostgreSQL zu verbinden. Weitere Informationen hierzu finden Sie unter Verbindung mit dem AWS JDBC-Treiber für PostgreSQL herstellen.

Verbindung mit dem AWS JDBC-Treiber für PostgreSQL herstellen

Der AWS JDBC-Treiber für PostgreSQL ist ein Client-Wrapper, der Ihnen hilft, die Hochverfügbarkeitsfunktionen von Aurora PostgreSQL voll auszuschöpfen. Weitere Informationen zum AWS JDBC-Treiber für PostgreSQL und vollständige Anweisungen zu seiner Verwendung finden Sie im AWS JDBC-Treiber für PostgreSQL-Repository. GitHub

Der AWS JDBC-Treiber für PostgreSQL erweitert den Community-Treiber pgJDBC. Er wurde entwickelt, um die clusterfähigen Failover-Funktionen von Aurora PostgreSQL optimal zu nutzen. Im Falle eines Failovers fragt der AWS -JDBC-Treiber für PostgreSQL den Cluster direkt nach der neuen Topologie ab, anstatt die DNS-Auflösung zu verwenden. Durch die direkte Abfrage des Clusters kann der AWS JDBC-Treiber für PostgreSQL schneller, zuverlässiger und vorhersehbarer Weise eine Verbindung zum neuen Primärserver herstellen, wodurch potenzielle Verzögerungen aufgrund der DNS-Auflösung vermieden werden.

Der AWS JDBC-Treiber für PostgreSQL unterstützt AWS Identity and Access Management (IAM) -Datenbankauthentifizierung und. AWS Secrets Manager Weitere Informationen zur Verwendung dieser Authentifizierungsmechanismen mit dem Treiber finden Sie unter AWS IAM-Authentifizierungs-Plug-In und AWS Secrets Manager -Plugin im AWS JDBC-Treiber für PostgreSQL-Repository. GitHub

Weitere Informationen zur IAM-Datenbankauthentifizierung finden Sie in IAM-Datenbankauthentifizierung. Weitere Informationen zu Secrets Manager finden Sie im Benutzerhandbuch für AWS Secrets Manager.

Behebung von Aurora-Verbindungsfehlern

Häufige Ursachen für Verbindungsfehler mit einem neuen Aurora-DB-Cluster umfassen Folgende:

  • Die Sicherheitsgruppe in der VPC erlaubt keinen Zugriff – Ihre VPC muss Verbindungen von Ihrem Gerät oder von einer Amazon-EC2-Instance durch ordnungsgemäße Konfiguration der Sicherheitsgruppe in der VPC zulassen. Um dies zu beheben, ändern Sie die Inbound-Regeln der Sicherheitsgruppe Ihrer VPC, um Verbindungen zuzulassen. Ein Beispiel finden Sie unter Tutorial: Erstellen einer VPC zur Verwendung mit einem DB-Cluster (nur IPv4).

  • Port durch Firewallregeln blockiert – Überprüfen Sie den Wert des für Ihren Aurora-DB-Cluster konfigurierten Ports. Wenn eine Firewallregel diesen Port blockiert, können Sie die Instance mithilfe eines anderen Ports neu erstellen.

  • Unvollständige oder falsche IAM Konfiguration – Wenn Sie Ihre Aurora-DB-Instance für die Verwendung von IAM–basierter Authentifizierung erstellt haben, stellen Sie sicher, dass sie ordnungsgemäß konfiguriert ist. Weitere Informationen finden Sie unter IAM-Datenbankauthentifizierung.

Weitere Informationen zur Fehlerbehebung von Aurora DB-Verbindungsproblemen finden Sie unter Verbindung zur Amazon RDS-DB-Instance kann nicht hergestellt werden.