Rumah  >  Soal Jawab  >  teks badan

Tajuk ditulis semula sebagai: PDOException SQLSTATE ralat ditemui, fail atau direktori tidak ditemui

Saya percaya saya telah berjaya menggunakan tapak (sangat asas) saya untuk fortrabbit, tetapi sebaik sahaja saya menyambung ke SSH untuk menjalankan beberapa arahan (seperti php artisan migratephp artisan db:seed) saya mendapat mesej ralat:

[PDOException]
SQLSTATE[HY000] [2002] No such file or directory

Pada satu ketika, penghijrahan mesti berjaya kerana jadual saya ada di sana - tetapi itu tidak menjelaskan mengapa ia tidak berfungsi untuk saya sekarang.

P粉183077097P粉183077097398 hari yang lalu606

membalas semua(2)saya akan balas

  • P粉788765679

    P粉7887656792023-10-11 12:04:03

    Salah satu sebab paling mudah untuk ralat ini ialah pelayan MySQL tidak berjalan. Jadi semak dulu. Jika sudah bermula, teruskan dengan cadangan lain:

    Saya mengalami masalah yang sama. Tiada penyelesaian di atas berfungsi untuk saya. Saya menyelesaikan masalah dengan menukar "Host" dalam fail /app/config/database.php daripada "localhost" kepada "127.0.0.1".

    Tidak pasti mengapa "localhost" tidak berfungsi secara lalai, tetapi saya mendapati jawapan ini dalam masalah yang sama diselesaikan dalam siaran symfony2. https://stackoverflow.com/a/9251924

    Kemas kini: Sesetengah orang bertanya mengapa pembetulan ini berfungsi, jadi saya melakukan penyelidikan tentang topik tersebut. Seperti yang dinyatakan dalam siaran ini, mereka nampaknya menggunakan jenis sambungan yang berbeza https://stackoverflow.com/a/9715164

    Masalah di sini ialah "localhost" menggunakan soket UNIX dan tidak dapat mencari pangkalan data dalam direktori standard. Walau bagaimanapun, "127.0.0.1" menggunakan TCP (Transmission Control Protocol), yang pada asasnya bermakna ia berjalan melalui "internet tempatan" pada komputer anda dan jauh lebih dipercayai daripada soket UNIX dalam kes ini.

    balas
    0
  • P粉356361722

    P粉3563617222023-10-11 10:29:28

    Mesej ralat menunjukkan percubaan untuk menyambung ke MySQL melalui soket (tidak disokong).

    Dalam konteks Laravel (artisan) anda mungkin mahu menggunakan persekitaran yang berbeza/betul. Contohnya: php artisan migrate --env=product (atau mana-mana persekitaran). Lihat di sini.

    balas
    0
  • Batalbalas