Herstellen einer Verbindung mit einer Amazon RDS-DB-Instance - Amazon Relational Database Service

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 einer Amazon RDS-DB-Instance

Bevor Sie eine Verbindung mit einer DB-Instance herstellen können, müssen Sie die DB-Instance erstellen. Weitere Informationen finden Sie unter Erstellen einer Amazon RDS-DB-Instance. Nachdem Amazon RDS Ihre DB-Instance bereitgestellt hat, verwenden Sie jede beliebige Standard-Client-Anwendung und jedes Hilfsprogramm für Ihre DB-Engine, um eine Verbindung mit der DB-Instance herzustellen. Geben Sie in der Verbindungszeichenfolge die DNS-Adresse aus dem Endpunkt der DB-Instance als Host-Parameter an. Sie geben auch die Portnummer vom DB-Instance-Endpunkt als Portparameter an.

Finden der Verbindungsinformationen für eine Amazon RDS-DB-Instance

Die Verbindungsinformationen für eine DB-Instance umfassen ihren Endpunkt, ihren Port und einen gültigen Datenbankbenutzer, z. B. den Masterbenutzer. Nehmen wir beispielsweise für eine MySQL-DB-Instance an, dass der Endpunktwert laute mydb.123456789012.us-east-1.rds.amazonaws.com. In diesem Fall ist 3306 der Port-Wert und der Datenbankbenutzer ist admin. Angesichts dieser Informationen geben Sie die folgenden Werte in einer Verbindungszeichenfolge an:

  • Geben Sie für den Host- bzw. Hostnamen oder den DNS-Namen a mydb.123456789012.us-east-1.rds.amazonaws.com.

  • Als Port 3306.

  • Geben Sie für Benutzer a admin.

Der Endpunkt ist für jede DB-Instance eindeutig, und die Werte des Ports und des Benutzers können variieren. Die folgende Liste zeigt den gebräuchlichsten Port für jede DB-Engine:

  • Db2 — 50000

  • MariaDB – 3306

  • Microsoft SQL Server – 1433

  • MySQL – 3306

  • Oracle – 1521

  • PostgreSQL – 5432

Um eine Verbindung mit einer DB-Instance herzustellen, verwenden Sie einen beliebigen Client für eine DB-Engine. Sie könnten beispielsweise das mysql-Dienstprogramm verwenden, um eine Verbindung zu einer MariaDB- oder MySQL-DB-Instance herzustellen. Sie können Microsoft SQL Server Management Studio verwenden, um eine Verbindung mit einer SQL Server-DB-Instance herzustellen. Sie können Oracle SQL Developer verwenden, um eine Verbindung mit einer Oracle-DB-Instance herzustellen. Entsprechend können Sie das Befehlszeilenprogramm psql verwenden, um eine Verbindung mit einer PostgreSQL-DB-Instance herzustellen.

Verwenden Sie die AWS Management Console, um die Verbindungsinformationen für eine DB-Instance zu finden. Sie können auch den describe-db-instancesBefehl AWS Command Line Interface (AWS CLI) oder den RDS-API-Vorgang DescribeDBInstances verwenden.

Um die Verbindungsinformationen für eine DB-Instance zu finden, finden Sie im AWS Management Console
  1. Melden Sie sich bei der Amazon RDS-Konsole an AWS Management Console und öffnen Sie sie unter https://console.aws.amazon.com/rds/.

  2. Klicken Sie im Navigationsbereich auf Datenbanken, um eine Liste Ihrer DB-Instances anzuzeigen.

  3. Wählen Sie den Namen der DB-Instance aus, um ihre Details anzuzeigen.

  4. Kopieren Sie auf der Registerkarte Connectivity & security (Anbindung und Sicherheit) den Endpunkt. Notieren Sie sich auch die Portnummer. Sie benötigen sowohl den Endpunkt als auch die Portnummer, um die Verbindung zur DB-Instance herzustellen.

    Der Endpunkt und Port einer DB-Instance
  5. Wenn Sie den Masterbenutzernamen finden müssen, wählen Sie die Registerkarte Konfiguration und den Wert für den Masterbenutzernamen an.

Rufen Sie den describe-db-instancesBefehl auf, um die Verbindungsinformationen für eine DB-Instance mithilfe von zu ermitteln. AWS CLI Fragen Sie beim Aufruf die DB-Instance-ID, den Endpunkt, den Port und den Masterbenutzernamen ab.

Für LinuxmacOS, oderUnix:

aws rds describe-db-instances \ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Windows:

aws rds describe-db-instances ^ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Die Ausgabe sollte in etwa wie folgt aussehen.

[ [ "mydb", "mydb.123456789012.us-east-1.rds.amazonaws.com", 3306, "admin" ], [ "myoracledb", "myoracledb.123456789012.us-east-1.rds.amazonaws.com", 1521, "dbadmin" ], [ "mypostgresqldb", "mypostgresqldb.123456789012.us-east-1.rds.amazonaws.com", 5432, "postgresadmin" ] ]

Rufen Sie den Operation DescribeDBInstances auf, um die Verbindungsinformationen für eine DB-Instance mithilfe der Amazon RDS-API zu finden. Suchen Sie in der Ausgabe die Werte für die Endpunktadresse, den Endpunktport und den Masterbenutzernamen.

Datenbankauthentifizierungsoptionen

Amazon RDS unterstützt die folgenden Möglichkeiten zur Authentifizierung von Datenbankbenutzern:

  • Passwortauthentifizierung – Ihre DB-Instance führt die gesamte Verwaltung von Benutzerkonten durch. Sie erstellen Benutzer und geben Kennwörter mit SQL-Anweisungen an. Die SQL-Anweisungen, die Sie verwenden können, hängen von Ihrer DB-Engine ab.

  • AWS Identity and Access Management (IAM-) Datenbankauthentifizierung — Sie müssen kein Passwort verwenden, wenn Sie eine Verbindung zu einer DB-Instance herstellen. Stattdessen verwenden Sie ein Authentifizierungstoken.

  • Kerberos-Authentifizierung – Sie verwenden die externe Authentifizierung von Datenbankbenutzern, die Kerberos und Microsoft Active Directory verwenden. Kerberos ist ein Netzwerk-Authentifizierungsprotokoll, das Tickets und symmetrische Schlüsselkryptographie verwendet, um die Notwendigkeit der Übertragung von Passwörtern über das Netzwerk zu vermeiden. Kerberos wurde in Active Directory integriert und wurde entwickelt, um Benutzer gegenüber Netzwerkressourcen wie Datenbanken zu authentifizieren.

IAM-Datenbankauthentifizierung und Kerberos-Authentifizierung sind nur für bestimmte DB-Engines und Versionen verfügbar.

Weitere Informationen finden Sie unter Datenbankauthentifizierung mit Amazon RDS.

Verschlüsselte Verbindungen

Sie können Secure Socket Layer (SSL) oder Transport Layer Security (TLS) aus Ihrer Anwendung verwenden, um eine Verbindung zu einer DB-Instance zu verschlüsseln. Jede DB-Engine hat einen eigenen Vorgang für die Implementierung von SSL/TLS. Weitere Informationen finden Sie unter .

Szenarien für den Zugriff auf eine DB-Instance in einer VPC

Mit Amazon Virtual Private Cloud (Amazon VPC) können Sie AWS Ressourcen wie Amazon RDS-DB-Instances in einer Virtual Private Cloud (VPC) starten. Wenn Sie Amazon VPC verwenden, haben Sie die Kontrolle über Ihre virtuelle Netzwerkumgebung. Sie können Ihren eigenen IP-Adressbereich auswählen, Subnetze erstellen sowie Routing-Tabellen und Zugriffskontrolllisten konfigurieren.

Eine VPC-Sicherheitsgruppe kontrolliert den Zugriff auf DB-Instances, die sich in einer VPC befinden. Jede VPC-Sicherheitsgruppenregel erlaubt einer bestimmten Quelle den Zugriff auf eine DB-Instance in einer VPC, die dieser VPC-Sicherheitsgruppe zugeteilt ist. Die Quelle kann ein Adressenbereich (zum Beispiel: 203.0.113.0/24) oder eine andere VPC-Sicherheitsgruppe sein. Wenn Sie eine VPC-Sicherheitsgruppe als Quelle festlegen, erlauben Sie eingehenden Datenverkehr von allen Instances (typischerweise Anwendungsserver), die Quell-VPC-Sicherheitsgruppe verwenden.

Bevor Sie versuchen, eine Verbindung zu Ihrer DB-Instance herzustellen, konfigurieren Sie Ihre VPC für Ihren Anwendungsfall. Im Folgenden finden Sie gängige Szenarien für den Zugriff auf eine DB-Instance in einer VPC:

  • Eine DB-Instance in einer VPC, auf die eine Amazon EC2-Instance in derselben VPC zugreift – Eine übliche Verwendung einer DB-Instance in einer VPC besteht darin, Daten mit einem Anwendungsserver zu teilen, der in einer EC2-Instance in derselben VPC ausgeführt wird. Die EC2-Instance kann einen Webserver mit einer Anwendung ausführen, die mit der DB-Instance interagiert.

  • Eine DB-Instance in einer VPC, auf die von einer EC2-Instance in einer anderen VPC zugegriffen wird. – In einigen Fällen befindet sich Ihre DB-Instance in einer anderen VPC als die EC2-Instance, mit der Sie darauf zugreifen. In diesem Fall können Sie VPC-Peering verwenden, um auf die DB-Instance zuzugreifen.

  • Eine DB-Instance in einer VPC, auf die von einer Clientanwendung über das Internet zugegriffen wird. – Damit eine Client-Anwendung über das Internet auf eine DB-Instance in einer VPC zugreifen kann, konfigurieren Sie eine VPC mit einem einzelnen öffentlichen Subnetz. Außerdem konfigurieren Sie ein Internet-Gateway für die Kommunikation über das Internet.

    Um eine Verbindung zu einer DB-Instance von außerhalb ihrer VPC herzustellen, muss die DB-Instance öffentlich zugänglich sein. Außerdem muss der Zugriff unter Verwendung der eingehenden Regeln der Sicherheitsgruppe der DB-Instance gewährt werden, und andere Anforderungen müssen erfüllt sein. Weitere Informationen finden Sie unter Verbindung zur Amazon RDS-DB-Instance kann nicht hergestellt werden.

  • Eine DB-Instance in einer VPC, auf die über ein privates Netzwerk zugegriffen wird – Wenn Ihre DB-Instance nicht öffentlich zugänglich ist, können Sie eine der folgenden Optionen verwenden, um von einem privaten Netzwerk aus darauf zuzugreifen:

    • Eine AWS Site-to-Site-VPN-Verbindung

    • AWS Direct Connect Eine Verbindung

    • Eine AWS Client VPN Verbindung

Weitere Informationen finden Sie unter Szenarien für den Zugriff auf eine DB-Instance in einer VPC.

Mit den AWS Treibern wird eine Verbindung zu DB-Instances hergestellt

Die AWS Treibersuite wurde so konzipiert, dass sie schnellere Switchover- und Failover-Zeiten sowie Authentifizierung mit AWS Secrets Manager, AWS Identity and Access Management (IAM) und Federated Identity unterstützt. Die AWS Treiber sind darauf angewiesen, den Status der DB-Instance zu überwachen und die Instance-Topologie zu kennen, um die neue primäre Instance zu ermitteln. Dieser Ansatz reduziert die Switchover- und Failover-Zeiten auf einstellige Sekunden, verglichen mit mehreren zehn Sekunden bei Open-Source-Treibern.

In der folgenden Tabelle sind die Funktionen aufgeführt, die für die einzelnen Treiber unterstützt werden. Im Zuge der Einführung neuer Servicefunktionen besteht das Ziel der AWS Treibersuite darin, eine integrierte Unterstützung für diese Servicefunktionen zu bieten.

Funktion AWS JDBC-Treiber AWS Python-Treiber
Failover-Unterstützung Ja Ja
Verbesserte Failover-Überwachung Ja Ja
Aufteilung von Lese-/Schreibvorgängen Ja Ja
Verbindung mit Treibermetadaten Ja N/A
Telemetrie Ja Ja
Secrets Manager Ja Ja
IAM-Authentifizierung Ja Ja
Föderierte Identität (AD FS) Ja Ja
Föderierte Identität (Okta) Ja Nein
Multi-AZ-DB-Cluster Ja Ja

Weitere Informationen zu den AWS Treibern finden Sie im entsprechenden Sprachtreiber für Ihre RDS for MariaDB-, RDS for MySQL- oder RDS for PostgreSQL-DB-Instance.

Anmerkung

Die einzigen Funktionen, die für RDS for MariaDB unterstützt werden, sind Authentifizierung mit AWS Secrets Manager, AWS Identity and Access Management (IAM) und Federated Identity.

Verbindung zu einer DB-Instance herstellen, auf der eine bestimmte DB-Engine ausgeführt wird

Informationen zum Herstellen einer Verbindung mit einer DB-Instance, die eine bestimmte DB-Engine ausführt, finden Sie in den Anweisungen für Ihre DB-Engine:

Verwalten von Verbindungen mit RDS Proxy

Sie können auch Amazon-RDS-Proxy verwenden, um Verbindungen mit DB-Instances von RDS für MariaDB, RDS für Microsoft SQL Server, RDS für MySQL und RDS für PostgreSQL zu verwalten. RDS Proxy ermöglicht Anwendungen das Pooling und Freigeben von Datenbankverbindungen zur Verbesserung der Skalierbarkeit. Weitere Informationen finden Sie unter Verwenden von Amazon RDS Proxy.