Fix: FEHLER 2003 (HY000): Es kann keine Verbindung zum MySQL-Server unter „127.0.0.1“ hergestellt werden (111)
Dieses Tutorial soll die notwendigen Schritte zur Behebung des Fehlers „FEHLER 2003 (HY000): Es kann keine Verbindung zum MySQL-Server unter „127.0.0.1“ (111)“ erläutert werden, der auftreten kann, wenn Sie dies versuchen Zugriff auf den MySQL-Datenbankserver.
Bevor Sie fortfahren, sollten Sie, wenn Sie ein Linux-Benutzer sind, der neu bei MySQL/MariaDB ist, MySQL/MariaDB für Anfänger – Teil 1 und 20 MySQL-Befehle (Mysqladmin) für die Datenbankverwaltung in lernen Auch Linux.
Wenn Sie hingegen bereits ein fortgeschrittener/erfahrener MySQL-Benutzer sind, können Sie diese 15 nützlichen Tipps zur Leistungsoptimierung und -optimierung von MySQL/MariaDB meistern.
Hinweis: Für dieses Tutorial wird davon ausgegangen, dass Sie den MySQL-Datenbankserver bereits installiert haben.
Zurück zum eigentlichen Punkt: Was sind einige der möglichen Ursachen für diesen Fehler?
- Netzwerkfehler, insbesondere wenn der MySQL-Datenbankserver auf einem Remote-Host ausgeführt wird.
- Auf dem genannten Host läuft kein MySQL-Server.
- Firewall blockiert die TCP-IP-Verbindung oder andere damit zusammenhängende Gründe.
Im Folgenden finden Sie die wesentlichen Schritte, um damit umzugehen.
1. Wenn sich der Datenbankserver auf einem Remote-Computer befindet, versuchen Sie, die Client-Server-Konnektivität mit dem Befehl ping
zu testen, zum Beispiel:
ping server_ip_address
Sobald die Konnektivität besteht, verwenden Sie den Befehl ps
unten, der Informationen zu einer Auswahl der aktiven Prozesse anzeigt, zusammen mit einem Befehl pipe
und grep, um zu überprüfen, ob der MySQL-Daemon vorhanden ist läuft auf Ihrem System.
ps -Af | grep mysqld
wo die Option:
-A
– aktiviert die Auswahl aller Prozesse-f
– ermöglicht die vollständige Formatauflistung
Wenn vom vorherigen Befehl keine Ausgabe erfolgt, starten Sie den MySQL-Dienst wie folgt:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
Versuchen Sie nach dem Starten des MySQL-Dienstes, auf den Datenbankserver zuzugreifen:
mysql -u username -p -h host_address
2. Wenn Sie immer noch den gleichen Fehler erhalten, ermitteln Sie den Port (Standard ist 3306), auf dem der MySQL-Daemon lauscht, indem Sie den Befehl „netstat“ ausführen.
netstat -lnp | grep mysql
wobei die Optionen:
-l
– zeigt Überwachungsports an-n
– ermöglicht die Anzeige numerischer Adressen-p
– zeigt PID und Namen des Programms an, dem der Socket gehört
Verwenden Sie daher die Option -P
, um den Port anzugeben, den Sie in der obigen Ausgabe sehen, während Sie auf den Datenbankserver zugreifen:
mysql -u username -p -h host_address -P port
3. Wenn alle oben genannten Befehle erfolgreich ausgeführt werden, der Fehler jedoch weiterhin angezeigt wird, öffnen Sie die MySQL-Konfigurationsdatei.
vi /etc/mysql/my.cnf
OR
vi /etc/mysql/mysql.conf.d/mysqld.cnf
Suchen Sie nach der folgenden Zeile und kommentieren Sie sie mit dem Zeichen #
aus:
bind-address = 127.0.0.1
Speichern Sie die Datei und beenden Sie sie. Starten Sie anschließend den MySQL-Dienst wie folgt neu:
sudo systemctl start mysql.service
sudo systemctl start mariadb.service
OR
sudo /etc/init.d/mysqld start
Wenn jedoch FirewallD oder Iptables ausgeführt werden, überprüfen Sie die Firewall-Dienste und öffnen Sie den MySQL-Port, vorausgesetzt, dass die Firewall TCP-IP-Verbindungen zu Ihrem MySQL-Server blockiert.
Das ist alles! Kennen Sie andere Methoden oder haben Sie Vorschläge zur Behebung des oben genannten MySQL-Verbindungsfehlers? Lassen Sie es uns wissen, indem Sie über das Feedback-Formular unten einen Kommentar hinterlassen.