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

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, können Sie jede Standard-Client-Anwendung und jedes -Hilfsprogramm für Ihre DB-Engine verwenden, um eine Verbindung mit der DB-Instance herzustellen. Geben Sie in der Verbindungszeichenfolge die DNS-Adresse aus dem primären DB-Instance-Endpunkt als Host-Parameter an sowie die Portnummer vom Instance-Endpunkt als Port-Parameter.

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:

  • 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 zu einer Oracle-DB-Instance herzustellen, oder das Befehlszeilendienstprogramm psql, um eine Verbindung mit einer PostgreSQL-DB-Instance herzustellen.

Um die Verbindungsinformationen für eine DB-Instance zu finden, können Sie AWS Management Console, den AWS Command Line Interface-Befehl (AWS CLI) describe-db-instances oder die Amazon-RDS-API-Operation DescribeDBInstances verwenden, um ihre Details aufzulisten.

So finden Sie die Verbindungsinformationen für eine DB-Instance im AWS Management Console

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole 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.

Um die Verbindungsinformationen für eine DB-Instance mithilfe des AWS CLI zu finden, rufen Sie den Befehl describe-db-instances auf. Fragen Sie beim Aufruf die DB-Instance-ID, den Endpunkt, den Port und den Masterbenutzernamen ab.

Für Linux, macOS oder Unix:

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

Für 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 benötigen kein Passwort, um eine Verbindung mit einer DB-Instance herzustellen. 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 Verwenden von SSL/TLS für die Verschlüsselung einer Verbindung zu einer DB-Instance.

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 z. B. 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. – Wenn sich Ihre DB-Instance in einer anderen VPC befindet als die EC2-Instance, mit der Sie darauf zugreifen, können Sie VPC-Peering verwenden, um auf die DB-Instance zuzugreifen.

  • Eine DB-Instance in einer VPC, auf die eine Clientanwendung über das Internet zugreifen. – 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 und 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 ein privates Netzwerk zugegriffen hat. – Wenn Ihre DB-Instance nicht öffentlich zugänglich ist, können Sie eine AWS Site-to-Site-VPN-Verbindung oder eine AWS Direct Connect-Verbindung verwenden, um über ein privates Netzwerk darauf zuzugreifen.

  • Eine DB-Instance in einer VPC, auf die von einer EC2-Instance außerhalb einer VPC zugegriffen wird. – Sie können mithilfe von ClassicLink zwischen einer DB-Instance in einer VPC und einer EC2-Instance kommunizieren, die sich nicht in einer VPC befindet.

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

Herstellen einer Verbindung mit einer DB-Instance, die eine bestimmte DB-Engine ausführt

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 zu MySQL- und PostgreSQL DB-Instances zu verwalten. RDS Proxy ermöglicht Anwendungen das Pooling und Freigeben von Datenbankverbindungen zur Verbesserung der Skalierbarkeit.