Heim >Datenbank >MySQL-Tutorial >Warum schlägt meine PHP-MySQL-Verbindung mit dem Unix-Socket-Fehler „Keine solche Datei oder kein solches Verzeichnis' fehl?

Warum schlägt meine PHP-MySQL-Verbindung mit dem Unix-Socket-Fehler „Keine solche Datei oder kein solches Verzeichnis' fehl?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-13 08:21:13761Durchsuche

Why Does My PHP MySQL Connection Fail with a

Unix-Socket-Dateifehler in der PHP-MySQL-Verbindung

Beim Versuch, über das Terminal eine Verbindung zu einer MySQL-Datenbank herzustellen, kann der folgende Fehler auftreten :

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

Dieser Fehler weist darauf hin, dass das PHP-Skript die richtige Unix-Socket-Datei für die Verbindung zum MySQL-Server nicht finden kann. Die Socket-Datei, die sich normalerweise unter /tmp/mysql.sock oder /var/mysql/mysql.sock befindet, stellt einen Kommunikationskanal zwischen PHP und dem MySQL-Server bereit.

Um dieses Problem zu beheben, können Sie eine symbolische Datei erstellen Verknüpfung zwischen dem tatsächlichen Speicherort der Socket-Datei und dem erwarteten Speicherort. Dadurch wird sichergestellt, dass PHP die Socket-Datei finden kann, ohne dass der Fehler auftritt.

Wenn Sie /tmp/mysql.sock, aber kein /var/mysql/mysql.sock haben, führen Sie die folgenden Befehle aus:

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 kein /tmp/mysql.sock haben, verwenden Sie diese Befehle:

cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

Stellen Sie in jedem Fall sicher, dass Sie über die erforderlichen Berechtigungen zum Erstellen des Verzeichnisses und des symbolischen Links verfügen. Stellen Sie den Befehlen bei Bedarf sudo voran.

Sobald die symbolische Verbindung hergestellt ist, kann PHP über den erwarteten Speicherort der Socket-Datei eine Verbindung zum MySQL-Server herstellen und so den Fehler beheben.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine PHP-MySQL-Verbindung mit dem Unix-Socket-Fehler „Keine solche Datei oder kein solches Verzeichnis' fehl?. 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