Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL – Verbindungsfehler – [MySQL][ODBC 5.3(w)-Treiber]Host „IP“ darf sich nicht mit diesem MySQL-Server verbinden

Einer meiner Kunden kontaktierte mich wegen eines Verbindungsserverproblems zwischen SQL Server und MySQL Server. Da ich hauptsächlich mit SQL Server arbeite, hat es Spaß gemacht, MySQL Server zu installieren und zu verbinden. Während ich versuchte, das Problem zu simulieren, wollte ich einen Verbindungsserver erstellen. In diesem Blog würden wir lernen, wie man den MySQL-Verbindungsfehler [MySQL][ODBC 5.3(w)-Treiber]Host „IP“ kann sich nicht mit diesem MySQL-Server verbinden.

beheben kann

Ich habe MySQL Server auf einem Server installiert und das Passwort des Root-Benutzers angegeben. Als ich versuchte, mich mit ODBC mit MySQL Server zu verbinden.

Sobald ich auf den Test geklickt habe, sehe ich den folgenden Fehler.

Die in der Fehlermeldung erwähnte IP ist die IP des Clients, der versucht, eine Verbindung herzustellen. Die Textnachricht lautet wie folgt:

Verbindung fehlgeschlagen
[MySQL][ODBC 5.3(w)-Treiber]Host „IP“ darf sich nicht mit diesem MySQL-Server verbinden:

Ich habe diesen Fehler noch nie bei der Arbeit mit SQL Server gesehen, also hatte ich keine Ahnung von diesem Fehler. Als ich recherchierte, lernte ich unten.

Standardmäßig erlaubt MySQL Remote-Clients nicht, sich mit der MySQL-Datenbank zu verbinden.

Dies lässt sich am schnellsten wie folgt überprüfen. Wenn wir die mysql.user-Tabelle überprüfen, gibt es einen Eintrag für den Benutzer „root“ mit dem Host „localhost“.

Also müssen wir einem Client die Berechtigung erteilen, sich mit MySQL Server zu verbinden.

PROBLEMUMGEHUNG/LÖSUNG

Stellen Sie zunächst sicher, dass es sich nicht um ein Firewall-Problem handelt.

Wie wir bereits besprochen haben, ist es ein Problem mit Berechtigungen. Wir können dann die Erlaubnis mit dem Befehl erteilen.

Use mysql;
GRANT ALL ON *.* to root@'x.x.x.x' IDENTIFIED BY 'your-root-password';

Sie können dazu auch MySQL Workbench verwenden. Der folgende Screenshot zeigt die zu befolgenden Schritte. Genau wie beim Befehl müssen wir Benutzername, Passwort und IP auf dem grafischen Bildschirm angeben.

Hoffentlich hilft dieser Blog. Wenn Sie nach den oben genannten Änderungen versuchen, sich von diesem Remote-Client (wir haben die IP/den Hostnamen angegeben) mit der MySQL-Datenbank zu verbinden, sollten Sie nicht mehr die Fehlermeldung „Der Host darf keine Verbindung zu diesem MySQL-Server herstellen“ erhalten. Wir können auch % verwenden, um alle Hosts zuzulassen, aber ich bevorzuge diese Option nicht.

Ich bin kein MySQL-Experte, also fühlen Sie sich frei, zu kommentieren und mich wissen zu lassen, ob es bessere Möglichkeiten gibt.