Ich installierte MySQL-Server auf Linux-Box IP = 192.168.1.100, aber wenn ich versuche, eine Verbindung zu dieser IP herzustellen, ist es immer ein Fehler (111). aber benutze localhost und 127.0.0.1 ist OK.
beer @ beer-laptop # ifconfig | grep "inet addr" inet addr: 127.0.0.1 Mask: 255.0.0.0 inet addr: 192.168.1.100 Bcast: 192.168.1.255 Mask: 255.255.255.0 beer @ beer-laptop # mysql -ubeer -pbeer -h192.168.1.100 FEHLER 2003 (HY000): Es kann keine Verbindung zum MySQL-Server unter '192.168.1.100' (111) [.____ hergestellt werden. ] beer @ beer-laptop # mysql -ubeer -pbeer -hlocalhost Willkommen auf dem MySQL-Monitor. Befehle enden mit; oder\g. Ihre MySQL-Verbindungs-ID lautet 160 Serverversion: 5.1.31-1ubuntu2 (Ubuntu) Geben Sie 'help;' oder '\ h' für Hilfe. Geben Sie '\ c' ein, um den Puffer zu löschen. Mysql> Beer @ beer-laptop # mysql -ubeer -pbeer -h127.0.0.1 Willkommen auf dem MySQL-Monitor. Befehle enden mit; oder\g. Ihre MySQL-Verbindungs-ID lautet 161 Serverversion: 5.1.31-1ubuntu2 (Ubuntu) Geben Sie 'help;' oder '\ h' für Hilfe. Geben Sie '\ c' ein, um den Puffer zu löschen. Mysql>
Verbinden Sie von einem anderen Computer es auch Fehler 111.
another @ another-laptop # mysql -ubeer -pbeer -h192.168.1.100 FEHLER 2003 (HY000): Verbindung zum MySQL-Server unter '192.168.1.100' nicht möglich (111)
Wie unterscheiden sich localhost/127.0.0.1 und 192.168.1.100 in diesem Fall? Ich weiß nicht, wie ich von einem anderen Computer aus eine Verbindung zu dieser Datenbank herstellen soll.
Hilfe bitte. Danken.
Dies bedeutet wahrscheinlich, dass Ihr MySQL-Server nur die localhost-Schnittstelle überwacht.
Wenn Sie solche Zeilen haben:
bind-address = 127.0.0.1
In deinem my.cnf
Konfigurationsdatei , sollten Sie sie kommentieren (ein # am Anfang der Zeilen einfügen) und MySQL neu starten.
Sudo service mysql restart
Dazu müssen Sie natürlich der Administrator des Servers sein.
111 bedeutet Verbindung abgelehnt, was wiederum bedeutet, dass Ihr mysqld nur die Schnittstelle localhost
abhört.
Um es zu ändern, möchten Sie vielleicht das bind-address
Wert im Abschnitt mysqld
Ihres my.cnf
Datei.
Wenn alle vorherigen Antworten keine Lösung ergaben, sollten Sie Ihre Benutzerberechtigungen überprüfen.
Wenn Sie sich als root
bei mysql anmelden könnten, sollten Sie Folgendes hinzufügen:
CREATE USER 'root'@'192.168.1.100' IDENTIFIED BY '***';
GRANT ALL PRIVILEGES ON * . * TO 'root'@'192.168.1.100' IDENTIFIED BY '***' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
Versuchen Sie dann erneut, eine Verbindung mit mysql -ubeer -pbeer -h192.168.1.100
Herzustellen. Es sollte funktionieren.
Wenn Sie cPanel/WHM ausführen, stellen Sie sicher, dass die IP-Adresse in der Firewall auf der Whitelist steht. Sie müssen diese IP-Adresse auch der Remote-SQL-IP-Liste in dem cPanel-Konto hinzufügen, zu dem Sie eine Verbindung herstellen möchten.