Heim >Datenbank >MySQL-Tutorial >Warum kann ich trotz „bind-address = 0.0.0.0' keine Verbindung zu meinem MySQL-Server von einem Remote-Host aus herstellen?
MySQL-Verbindungsfehler: HOST '' Es konnte keine Verbindung zum MySQL-Server hergestellt werden
Beim Versuch, mit dem MySQL-Befehl eine Verbindung zu MySQL herzustellen Wenn Sie versuchen, eine Verbindung zum Server herzustellen, erhalten Sie die folgende Fehlermeldung:
ERROR 1130 (HY000): Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
Dieser Fehler weist darauf hin, dass der Server so konfiguriert wurde, dass nur bestimmte Hosts eine Verbindung zulassen, und Ihr Host nicht in der Liste der zulässigen Hosts aufgeführt ist .
Überprüfen Sie die Root-Benutzerberechtigungen
In Ihrem Fall haben Sie bind-address in my.cnf auf 0.0.0.0 gesetzt, was bedeutet, dass der Server Verbindungen von allen Hosts akzeptieren sollte. Sie können jedoch immer noch keine Verbindung herstellen. Dies kann daran liegen, dass der Root-Benutzer nur berechtigt ist, eine Verbindung von localhost aus herzustellen.
Um dies zu überprüfen, führen Sie die folgende Abfrage aus:
SELECT host FROM mysql.user WHERE User = 'root';
Wenn die Ergebnisse nicht den Hostnamen oder die IP-Adresse enthalten, von der aus Sie eine Verbindung herstellen möchten, müssen Sie dem die Berechtigung erteilen Root-Benutzer von diesem Host. Berechtigung zum Herstellen einer Verbindung.
Berechtigung zum Herstellen einer Verbindung erteilen
Um dem Root-Benutzer die Berechtigung zum Herstellen einer Verbindung von einem bestimmten Host aus zu erteilen, verwenden Sie den folgenden Befehl:
CREATE USER 'root'@'host_ip' IDENTIFIED BY 'some_pass'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'host_ip';
wo host_ip ist die IP-Adresse des Hosts, zu dem Sie Verbindungen zulassen möchten.
Wenn Sie allen Hosts Verbindungsberechtigungen erteilen möchten, können Sie den Platzhalter % verwenden:
CREATE USER 'root'@'%' IDENTIFIED BY 'some_pass'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
Aktualisieren Sie abschließend die Berechtigungen, damit sie sofort wirksam werden:
FLUSH PRIVILEGES;
Jetzt sollten Sie in der Lage sein, den Befehl mysql zu verwenden, um von einem bestimmten Remote-Host aus eine Verbindung zum MySQL-Server herzustellen.
Das obige ist der detaillierte Inhalt vonWarum kann ich trotz „bind-address = 0.0.0.0' keine Verbindung zu meinem MySQL-Server von einem Remote-Host aus herstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!