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?
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:
cd /var sudo mkdir mysql sudo chmod 755 mysql cd mysql sudo ln -s /tmp/mysql.sock mysql.sock
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!