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