Heim >Datenbank >MySQL-Tutorial >Warum schlägt meine PHP-MySQL-Verbindung im Terminal mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl, funktioniert aber in einem Browser?

Warum schlägt meine PHP-MySQL-Verbindung im Terminal mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl, funktioniert aber in einem Browser?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-24 11:42:11728Durchsuche

Why is my PHP MySQL connection failing in the terminal with a

Verbindung zur MySQL-Datenbank schlägt im Terminal mit dem Fehler „Keine solche Datei oder kein solches Verzeichnis“ fehl

Beim Versuch, eine Verbindung zu MySQL über herzustellen Terminal auf einem Apple-Gerät mit dem bereitgestellten PHP-Skript verwenden, kann es sein, dass Benutzer auf den Fehler „mysql_connect(): [2002] Keine solche Datei oder kein solches Verzeichnis“ stoßen (versucht, eine Verbindung herzustellen über unix:///tmp/mysql.sock)“. Dieses Problem tritt auf, obwohl das Skript ordnungsgemäß funktioniert, wenn es über einen Browser aufgerufen wird.

Lösung

Das zugrunde liegende Problem ist darauf zurückzuführen, dass macOS den Speicherort der erforderlichen Socket-Datei falsch identifiziert. Um dies zu beheben, befolgen Sie diese Schritte:

  1. Bestimmen Sie den Speicherort der Socket-Datei mit dem Befehl:
ls -l /tmp/mysql.sock /var/mysql/mysql.sock
  1. Erstellen Sie einen symbolischen Link zum Socket Datei an dem Ort, an dem die Anwendung sucht.

Wenn /tmp/mysql.sock existiert:

cd /var
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock

Wenn /var/mysql/mysql.sock existiert:

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock
  1. Wenn Erteilen Sie bei Bedarf Berechtigungen zum Erstellen des Verzeichnisses und der Verknüpfung, indem Sie den Befehlen das Präfix voranstellen „sudo“.

Sobald der symbolische Link hergestellt ist, sollte die Verbindung zur MySQL-Datenbank erfolgreich hergestellt werden.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine PHP-MySQL-Verbindung im Terminal mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl, funktioniert aber in einem Browser?. 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