Rumah >pembangunan bahagian belakang >tutorial php >Mengapa sambungan PHP MySQL saya gagal dengan 'Tiada fail atau direktori sedemikian' dan bagaimana saya boleh membetulkannya menggunakan pautan simbolik?

Mengapa sambungan PHP MySQL saya gagal dengan 'Tiada fail atau direktori sedemikian' dan bagaimana saya boleh membetulkannya menggunakan pautan simbolik?

Barbara Streisand
Barbara Streisandasal
2024-12-09 01:56:11939semak imbas

Why is my PHP MySQL connection failing with

Ralat: Tidak Dapat Mewujudkan Sambungan MySQL melalui Soket Unix

Setelah cuba menyambung ke pangkalan data MySQL anda melalui Terminal pada Mac anda menggunakan PHP , anda menghadapi ralat berikut:

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

Ralat ini menunjukkan isu dengan fail soket MySQL, iaitu digunakan untuk sambungan berasaskan UNIX ke pangkalan data.

Penyelesaian: Cipta Pautan Simbolik

Punca isu ini ialah percanggahan dalam lokasi fail soket pada macOS . Untuk menyelesaikannya, anda perlu membuat pautan simbolik, iaitu fail yang menunjuk ke fail lain. Ini akan membolehkan Mac anda mencari fail soket yang diperlukan walaupun ia mencari di tempat yang salah.

Langkah:

Semak Lokasi Fail Soket

Gunakan arahan berikut untuk menentukan lokasi soket fail:

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

Buat Pautan Simbolik

Bergantung pada lokasi fail soket, anda perlu mencipta pautan simbolik seperti berikut:

  • Jika anda mempunyai /tmp/mysql.sock tetapi tidak /var/mysql/mysql.sock:
cd /var 
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock
  • Jika anda mempunyai /var/mysql/mysql.sock tetapi tidak /tmp/mysql.sock:
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock

Nota: Anda mungkin perlu menggunakan sudo sebelum arahan untuk mendapatkan kebenaran yang mencukupi.

Atas ialah kandungan terperinci Mengapa sambungan PHP MySQL saya gagal dengan 'Tiada fail atau direktori sedemikian' dan bagaimana saya boleh membetulkannya menggunakan pautan simbolik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn