Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
Warum erhalte ich die Fehlermeldung „Access Denied“, wenn ich versuche, eine Verbindung zu meinem Aurora MySQL-kompatiblen DB-Cluster herzustellen?
Ich möchte eine Verbindung zu meinem Amazon Aurora MySQL-kompatiblen Edition-DB-Cluster herstellen, erhalte aber die Fehlermeldung „Access denied“.
Kurzbeschreibung
Verwende eine der folgenden Optionen, um eine Verbindung zu einem Aurora MySQL-kompatiblen DB-Cluster herzustellen:
- Authentifizierung mit MySQL-Benutzername und -Passwort. Weitere Informationen findest du unter Access control and account management (Zugriffskontrolle und Kontoverwaltung) auf der MySQL-Website.
- Datenbankauthentifizierung für AWS Identity and Access Management (IAM, Identitäts- und Zugriffsmanagement).
Der Fehler „Access denied“ tritt normalerweise auf, wenn du einen falschen Benutzernamen oder ein falsches Passwort eingibst. Weitere Informationen findest du unter Access denied (Zugriff verweigert) auf der MySQL-Website.
Lösung
Prüfen, ob die Aurora-DB-Instance Verbindungen akzeptiert
Vergewissere dich, dass sich deine DB-Instance im Status AVAILABLE (verfügbar) befindet. Weitere Informationen findest du unter Amazon RDS-DB-Instance-Status anzeigen und DB-Instance-Status in einem Aurora-Cluster anzeigen. Siehe außerdem Wie löse ich Probleme bei der Verbindung mit meiner Amazon RDS-DB-Instance?
Problembehandlung bei Verbindungen, die DB-Anmeldeinformationen verwenden
Falsches Passwort
Stelle sicher, dass du das richtige Passwort eingibst, wenn du eine Verbindung zur Datenbank herstellst. Verwende keine Sonderzeichen im Passwort. Weitere Informationen findest du unter Wie setze ich das Admin-Benutzerpasswort für meine Amazon RDS-DB-Instance zurück?
Falscher Benutzername
Stelle sicher, dass du den richtigen Benutzernamen eingibst, wenn du eine Verbindung zur Datenbank herstellst.
Führe die folgende Abfrage aus, um zu überprüfen, ob der Benutzer vorhanden ist:
mysql> SELECT user FROM mysql.user WHERE User='username';
Wenn der Benutzer nicht vorhanden ist, führe die folgenden Abfragen aus, um einen neuen Benutzer zu erstellen:
mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'new-password-here'; mysql> FLUSH PRIVILEGES;
Weitere Informationen findest du unter Berechtigungen für das Hauptbenutzerkonto.
Der Benutzer ist vorhanden, aber der Client-Host hat keine Berechtigung, eine Verbindung herzustellen
Führe die folgende Abfrage aus, um zu überprüfen, welcher Host-Benutzer bzw. welche Host MySQL Verbindungen zulässt:
mysql> SELECT host, user FROM mysql.user WHERE User='username';
Führe die folgende Abfrage aus, um einen Benutzer mit der richtigen Host-Client-IP-Adresse oder dem Platzhaltersymbol (%) zu erstellen, das einer beliebigen IP-Adresse entspricht:
mysql> CREATE USER 'dbuser'@'%' IDENTIFIED BY 'new-password-here';
SSL ist erforderlich, aber der Client verwendet kein SSL
Führe die folgende Abfrage auf deiner DB-Instance aus, um zu überprüfen, ob ein Benutzer SSL erzwungen hat:
mysql> SELECT * FROM mysql.user WHERE ssl_type <> '';
Wenn SSL erzwungen wird, musst du SSL verwenden, um eine Verbindung herzustellen. Weitere Informationen findest du unter Verwendung von SSL/TLS zum Verschlüsseln einer Verbindung zu einem DB-Cluster.
Doppelte Benutzer
Um zu überprüfen, ob es Benutzer gibt, die denselben Benutzernamen haben, führe die folgende Abfrage aus:
mysql> SELECT host, user FROM mysql.user WHERE User='username';
Um das Problem doppelter Benutzer zu beheben, melde dich mit einem Benutzer an, der berechtigt ist, andere Benutzer zu LÖSCHEN. Nachdem du den sekundären Benutzer gelöscht hast, kann der erste Benutzer eine Verbindung herstellen.
Weitere Informationen findest du unter Wie erstelle ich einen weiteren Admin-Benutzer für meine Amazon-RDS-DB-Instance, auf der MySQL ausgeführt wird?
Bash konvertiert Sonderzeichen im Passwort
Setze dein Passwort in einfache Anführungszeichen, damit Bash keine Sonderzeichen im Passwort konvertieren kann.
Ein Verbindungspaket enthält nicht die richtigen Informationen
Das Verbindungspaket benötigt mehr als connect_timeout Sekunden, um ein Verbinden-Paket zu erhalten. Weitere Informationen findest du unter connect_timeout auf der MySQL-Website. Du kannst den Wert dieses DB-Parameters an deine Abfragen und deine Workload anpassen.
Der Wert der Variablen max_allowed_packet ist zu klein oder Abfragen benötigen mehr Speicher, als du der DB-Instance zugewiesen hast
Standardmäßig beträgt der maximale Wert für max_allowed_packet 64 MB. Weitere Informationen findest du unter max_allowed_packet auf der MySQL-Website.
Wenn du große BLOB-Spalten oder lange Zeichenfolgen verwendest, erhöhe den Wert von max_allowed_packet. Weitere Informationen findest du unter Bewährte Methoden für die Konfiguration von Parametern für Amazon RDS für MySQL, Teil 3: Parameter in Bezug auf Sicherheit, betriebliche Verwaltbarkeit und Konnektivitäts-Timeout.
Problembehandlung bei Verbindungen, die IAM-Authentifizierung verwenden
Informationen zum Herstellen einer Verbindung findest du unter Wie erlaube ich Benutzern, sich über ihre Amazon IAM-Anmeldeinformationen bei einer Amazon RDS für MySQL-DB-Instance zu authentifizieren?
Wenn du keine Verbindung herstellen kannst, findest du weitere Informationen unter Warum erhalte ich die Fehlermeldung Zugriff verweigert, wenn ich versuche, mithilfe der IAM-Authentifizierung eine Verbindung zu Amazon RDS für MySQL herzustellen?
Problembehandlung bei Verbindungen, die Amazon-RDS-Proxy verwenden
Informationen zum Herstellen einer Verbindung zu deinem DB-Cluster findest du unter Wie verwende ich Amazon-RDS-Proxy, um eine Verbindung zu meiner Amazon RDS für MySQL-DB-Instance oder einem Aurora MySQL-kompatiblen DB-Cluster herzustellen?
Wenn du keine Verbindung zum DB-Cluster herstellen kannst, findest du weitere Informationen unter Warum kann ich mit RDS Proxy keine Verbindung zu meiner Amazon RDS DB- oder Amazon Aurora-DB-Instance herstellen?
Ähnliche Informationen
Verbinden mit einem Amazon Aurora MySQL-DB-Cluster
IAM-Datenbankauthentifizierung für MariaDB, MySQL und PostgreSQL
