Wie behebe ich Probleme beim Herstellen einer Verbindung zu meiner Amazon-RDS-DB-Instance?

Zuletzt aktualisiert: 21.12.2021

Ich kann keine Verbindung zu meiner Amazon-Relational-Database-Service(Amazon RDS)-DB-Instance herstellen.. Warum kann ich keine Verbindung herstellen und wie behebe ich das?

Kurzbeschreibung

Die Unfähigkeit, eine Verbindung zu einer Amazon-RDS-DB-Instance herzustellen, kann eine Reihe von Ursachen haben. Hier sind einige der häufigsten Gründe:

  • Die RDS-DB-Instance befindet sich in einem anderen Zustand als Verfügbar und kann daher keine Verbindungen akzeptieren.
  • Die Quelle, die Sie zum Herstellen einer Verbindung mit der DB-Instance nutzen, fehlt in den Quellen, die zum Zugriff auf die DB-Instance in Ihrer Sicherheitsgruppe, Netzwerk-Zugriffskontrollisten (ACLs) oder lokalen Firewalls autorisiert sind.
  • Der falsche DNS-Name oder Endpunkt wurde verwendet, um eine Verbindung zur DB-Instance herzustellen.
  • Die Multi-AZ-DB-Instance ist fehlgeschlagen und die sekundäre DB-Instance nutzt ein Subnetz oder eine Routing-Tabelle, die keine eingehenden Verbindungen zulässt.
  • Die Benutzerauthentifizierung ist falsch.

Tipp: Mit den folgenden Schritten zur Fehlerbehebung können Sie die Ursache des Verbindungsproblems ermitteln. Oder Sie verwenden das AWSSupport-TroubleshootConnectivityToRDS AWS-Systems-Manager-Automation-Dokument, um das Problem für Sie zu diagnostizieren. Dieses Automatisierungsdokument kann Netzwerk-ACLs basierend auf der primären IP-Adresse der Amazon-Elastic-Compute-Cloud-Instance (Amazon EC2) diagnostizieren, aber kurzlebige Ports werden nicht überprüft. Das Automatisierungsdokument überprüft auch Sicherheitsgruppen basierend auf der primären IP-Adresse der EC2-Instance, aber diese Automatisierung überprüft keine bestimmten Ports. Weitere Informationen finden Sie unter Einen einfachen Automatisierungs-Workflow ausführen.

Auflösung

Stellen Sie sicher, dass sich Ihre DB-Instance im Status „Verfügbar“ befindet

Wenn Sie Ihre DB-Instance vor Kurzem gelauncht oder neu gelauncht haben, überprüfen Sie, ob die DB-Instance in der Amazon-RDS-Konsole im Status Verfügbar ist. Je nach Größe Ihrer DB-Instance kann es bis zu 20 Minuten dauern, bis die DB-Instance für Netzwerkverbindungen verfügbar wird.

Wenn Ihre DB-Instance im Status Fehlgeschlagen ist, siehe Warum befindet sich meine Amazon RDS-DB-Instance im Status „Fehlgeschlagen“?

Stellen Sie sicher, dass Ihre DB-Instance Verbindungen zulässt

Stellen Sie sicher, dass der Datenverkehr von der Quelle, die eine Verbindung zu Ihrer DB-Instance herstellt, nicht durch einen oder mehrere der folgenden Punkte gesperrt wird:

  • Alle Amazon-Virtual-Private(Amazon VPC)-Cloud-Sicherheitsgruppen, die mit der DB-Instance verknüpft sind. Falls erforderlich,fügen Sie Regeln für die mit der VPC verknüpfte Sicherheitsgruppe hinzu, die den Datenverkehr bezüglich der Quelle in und aus der DB-Instance zulassen. Sie können eine IP-Adresse, einen IP-Adressbereich oder eine andere VPC-Sicherheitsgruppe angeben. Allgemeine Informationen zu VPC- und DB-Instances finden Sie unter Szenarien für den Zugriff auf eine DB-Instance in einer VPC.
  • Jede mit der DB-Instance verknüpfte DB-Sicherheitsgruppe. Wenn sich die DB-Instance nicht in einer VPC befindet, verwendet die Instance möglicherweise eine DB-Sicherheitsgruppe zum Gate-Datenverkehr. Aktualisieren Sie Ihre DB-Sicherheitsgruppe, um Datenverkehr aus dem IP-AdressbereichAmazon-EC2-Sicherheitsgruppe, oder EC2-Classic-Instance zuzulassen, den Sie zum Herstellen einer Verbindung verwenden.
  • Verbindungen außerhalb einer VPC. Stellen Sie sicher, dass die DB-Instance öffentlich zugänglich ist und dass die DB-Instance einem öffentlichen Subnetz zugeordnet ist (z. B. ermöglicht die Routing-Tabelle den Zugriff von einem Internet-Gateway). Weitere Informationen finden Sie unter Szenarien für den Zugriff auf eine DB-Instance in einer VPC.
  • Netzwerk-ACLs. Netzwerk-ACLs fungieren als Firewall für Ressourcen in einem bestimmten Subnetz in einer VPC. Wenn Sie ACLs in Ihrer VPC verwenden, stellen Sie sicher, dass diese über Regeln verfügen, die ein- und ausgehenden Datenverkehr zur und von der DB-Instance zulassen.
  • Netzwerk- oder lokale Firewalls. Erkundigen Sie sich bei Ihrem Netzwerkadministrator, ob Ihr Netzwerk Datenverkehr zu und von den Ports zulässt, die die DB-Instance für die eingehende und ausgehende Kommunikation verwendet.
    Hinweis: Amazon RDS akzeptiert keinen ICMP-Datenverkehr (Internet Control Message Protocol), einschließlich Ping.

Beheben Sie potenzielle Probleme mit DNS-Namen oder -Endpunkten

Wenn Sie eine Verbindung zu Ihrer DB-Instance herstellen, verwenden Sie einen DNS-Namen (Endpunkt), der von der Amazon-RDS-Konsole bereitgestellt wird. Stellen Sie sicher, dass Sie den richtigen Endpunkt verwenden und den Endpunkt im richtigen Format für den Client bereitstellen, den Sie zum Herstellen einer Verbindung mit der DB-Instance verwenden. Eine Liste von Tutorials zur DB-Engine-Verbindung, die Anweisungen zum Finden und ordnungsgemäßen Verwenden eines Endpunkts in verschiedenen Client-Anwendungen enthalten, finden Sie unter Erste Schritte mit Amazon RDS.

Verwenden Sie beispielsweise „nslookup“ für den DB-Instance-Endpunkt von einer Amazon-EC2-Instance innerhalb der VPC:

nslookup myexampledb.xxxx.us-east-1.rds.amazonaws.com 
Server: xx.xx.xx.xx 
Address: xx.xx.xx.xx#53

Sehen Sie sich das folgende Beispiel für eine nicht maßgebliche Antwort an:

Name: myexampledb.xxxx.us-east-1.rds.amazonaws.com 
Address: 172.31.xx.x"

Überprüfen Sie die Routing-Tabellen, die Ihrer Multi-AZ-Bereitstellung zugeordnet sind

Wenn Sie eine Multi-AZ-Bereitstellung erstellen, starten Sie mehrere Replikat-DB-Instances in verschiedenen Availability Zones, um die Fehlertoleranz Ihrer Anwendung zu verbessern. Stellen Sie sicher, dass die mit jeder DB-Instance verknüpften Subnetze mit denselben oder ähnlichen Routing-Tabellen verknüpft sind. Andernfalls, wenn Ihre primäre DB-Instance auf ein Standby-Replikat umschaltet und das Standby-Replikat einer anderen Routing-Tabelle zugeordnet ist, wird Datenverkehr, der zuvor an Ihre DB-Instance geleitet wurde, möglicherweise nicht mehr korrekt weitergeleitet.

Weitere Informationen zum Konfigurieren von Routing-Tabellen finden Sie unter Routing-Tabellen. Weitere Informationen zu Multi-AZ-Bereitstellungen finden Sie unter Hohe Verfügbarkeit (Multi- AZ) für Amazon RDS.

Hinweis: Wenn Sie eine Verbindung zu Ihrer DB-Instance herstellen können, aber Authentifizierungsfehler erhalten, lesen Sie Wie setze ich das Master-Benutzerpasswort für meine Amazon-RDS-DB-Instance zurück?

Konnektivität überprüfen

Überprüfen Sie Ihre Verbindung, indem Sie einen der folgenden Befehle ausführen:

telnet <RDS endpoint> <port number>
nc <RDS endpoint> <port number>

Wenn einer der Befehle telnet oder nc erfolgreich sind, wurde eine Netzwerkverbindung hergestellt. Dies bedeutet, dass das Problem wahrscheinlich durch die Benutzerauthentifizierung bei der Datenbank verursacht wird, z. B. Benutzername und Passwort.