Heim >Backend-Entwicklung >PHP-Tutorial >Warum schlägt meine PHP-MySQL-Verbindung mit der Meldung „Keine solche Datei oder kein solches Verzeichnis' fehl und wie kann ich das Problem mithilfe symbolischer Links beheben?

Warum schlägt meine PHP-MySQL-Verbindung mit der Meldung „Keine solche Datei oder kein solches Verzeichnis' fehl und wie kann ich das Problem mithilfe symbolischer Links beheben?

Barbara Streisand
Barbara StreisandOriginal
2024-12-09 01:56:11939Durchsuche

Why is my PHP MySQL connection failing with

Fehler: MySQL-Verbindung konnte nicht über Unix-Socket hergestellt werden

Beim Versuch, über das Terminal auf Ihrem Mac mit PHP eine Verbindung zu Ihrer MySQL-Datenbank herzustellen , tritt der folgende Fehler auf:

Warning: mysql_connect(): [2002] No such file or directory (trying to connect via unix:///tmp/mysql.sock) in

Dieser Fehler weist auf ein Problem mit der MySQL-Socket-Datei hin, die für UNIX-basierte Verbindungen verwendet wird zur Datenbank.

Lösung: Erstellen Sie einen symbolischen Link

Die Hauptursache für dieses Problem ist eine Diskrepanz im Speicherort der Socket-Datei unter macOS. Um das Problem zu beheben, müssen Sie einen symbolischen Link erstellen, bei dem es sich um eine Datei handelt, die auf eine andere Datei verweist. Dadurch kann Ihr Mac die erforderliche Socket-Datei auch dann finden, wenn sie an der falschen Stelle sucht.

Schritte:

Speicherort der Socket-Datei prüfen

Verwenden Sie den folgenden Befehl, um die Position des Sockets zu bestimmen Datei:

ls -l /tmp/mysql.sock /var/mysql/mysql.sock

Symbolischen Link erstellen

Abhängig vom Speicherort der Socket-Datei müssen Sie einen symbolischen Link wie folgt erstellen:

  • Wenn Sie /tmp/mysql.sock haben, aber nicht /var/mysql/mysql.sock:
cd /var 
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock
  • Wenn Sie /var/mysql/mysql.sock, aber nicht /tmp/mysql.sock haben:
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

Hinweis: Möglicherweise müssen Sie sudo vor dem verwenden Befehle, um ausreichende Berechtigungen zu erhalten.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine PHP-MySQL-Verbindung mit der Meldung „Keine solche Datei oder kein solches Verzeichnis' fehl und wie kann ich das Problem mithilfe symbolischer Links beheben?. 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