Heim >Datenbank >MySQL-Tutorial >Warum erhalte ich beim Herstellen einer Remoteverbindung die Fehlermeldung „MySQL-Zugriff verweigert'?

Warum erhalte ich beim Herstellen einer Remoteverbindung die Fehlermeldung „MySQL-Zugriff verweigert'?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-10 17:43:18362Durchsuche

Why Am I Getting a

Fehler bei der Remote-MySQL-Verbindung: Behebung des Problems „Zugriff verweigert“

Bei vielen Benutzern tritt der frustrierende Fehler „FEHLER 1045 (28000): Zugriff für Benutzer verweigert“ auf " beim Versuch, remote auf MySQL zuzugreifen. Dieser Fehler verhindert aufgrund von Autorisierungsbeschränkungen, dass Remotecomputer eine Verbindung zu einer Datenbank herstellen können. Um dieses Problem genauer zu untersuchen, untersuchen wir ein bestimmtes Szenario.

In diesem Fall läuft auf einem lokalen Computer des Benutzers ein MySQL-Server (192.168.233.142) und er hat Schwierigkeiten, eine Remote-Verbindung von einem anderen Computer aus herzustellen (192.168.233.163). Es wird bestätigt, dass der MySQL-Port auf dem lokalen Computer geöffnet ist, aber bei Remote-Verbindungsversuchen tritt der oben genannte Fehler auf.

Das Kernproblem liegt in der MySQL-Benutzertabelle, die nur zwei Einträge für Root-Benutzer enthält: einen Erlauben des lokalen Zugriffs vom lokalen Host und einer, der den Zugriff von einer beliebigen IP-Adresse aus gewährt (%). Um dieses Problem zu beheben, muss der Benutzer einen bestimmten IP-Eintrag für den Remote-Computer zur Tabelle mysql.user hinzufügen. Dadurch wird eine explizite Autorisierung für diese bestimmte Maschine gewährt.

Der Fehler bleibt jedoch bestehen, auch nachdem der IP-Eintrag hinzugefügt und die Maschine neu gestartet wurde. Die Lösung besteht darin, eine GRANT-Anweisung als Root auszuführen und dabei die IP-Adresse, den Benutzernamen und das Passwort des vorgesehenen Remote-Benutzers anzugeben. Dadurch werden die erforderlichen Berechtigungen gewährt und sichergestellt, dass der Remote-Computer über die erforderlichen Berechtigungen für den Zugriff auf die Datenbank verfügt.

Gewähren von Berechtigungen mithilfe der Option „ALLE PRIVILEGES GEWÄHREN AUF . AN ‚USERNAME‘@‘IP‘“ IDENTIFIED BY 'PASSWORD' mit der Grant-Option-Anweisung ermöglicht es dem Remote-Benutzer, alle Datenbankoperationen auszuführen und diese Berechtigungen an andere Benutzer weiterzugeben. Durch Ausführen der „FLUSH PRIVILEGES“-Anweisung oder Neustarten des MySQL-Servers wird der Vorgang abgeschlossen und der Fernzugriff ermöglicht.

Indem Sie diese Schritte befolgen und die Benutzertabelle und Berechtigungen entsprechend anpassen, sollte der Benutzer in der Lage sein, erfolgreich Fernverbindungen herzustellen die MySQL-Datenbank.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Herstellen einer Remoteverbindung die Fehlermeldung „MySQL-Zugriff verweigert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn