Apabila menyambung dari mesin tempatan ke pelayan MySQL jauh, ralat yang berkaitan dengan kegagalan sambungan adalah perkara biasa. Satu ralat sedemikian ialah "SQLSTATE[HY000] [2002] Percubaan sambungan gagal...," yang menunjukkan kekurangan respons daripada hos atau kegagalan dalam mewujudkan sambungan.
1. Sekatan Akses Jauh:
Secara lalai, pelayan MySQL menyekat akses jauh untuk melindungi daripada sambungan yang tidak dibenarkan. Untuk membenarkan sambungan dari luar rangkaian persendirian, anda perlu:
2. Konfigurasi Pangkalan Data Salah:
Sahkan bahawa tetapan konfigurasi pangkalan data dalam fail persekitaran anda (cth., '.env') adalah betul. Pastikan bahawa nilai untuk 'DB_HOST', 'DB_DATABASE', 'DB_USERNAME' dan 'DB_PASSWORD' sepadan dengan tetapan pelayan jauh anda.
3. Gangguan Firewall:
Jika anda mempunyai tembok api pada mesin tempatan atau pelayan jauh anda, ia mungkin menyekat sambungan MySQL. Lumpuhkan tembok api buat sementara waktu atau buat peraturan untuk membenarkan trafik pada port 3306.
4. Tamat masa:
Percubaan sambungan mungkin gagal disebabkan oleh kelajuan rangkaian yang perlahan atau beban pelayan yang tinggi. Laraskan tetapan tamat masa dalam konfigurasi pangkalan data atau kod klien anda untuk menampung kemungkinan kelewatan.
5. Isu Rangkaian Lain:
Periksa ketersambungan rangkaian anda untuk memastikan tiada gangguan atau konflik. Sahkan bahawa pelayan jauh boleh dicapai dan tiada isu penyelesaian DNS.
Laravel 5.1 menggunakan PDO (Objek Data PHP) untuk menyambung ke pangkalan data. Apabila mengkonfigurasi sambungan pangkalan data anda, pastikan anda menetapkan sifat 'pemandu' kepada 'mysql.'
DB_CONNECTION=mysql
Jika isu berterusan, cuba dayakan mod nyahpepijat dalam Laravel dengan menetapkan 'APP_DEBUG' kepada 'true' dalam fail persekitaran anda. Ini akan memberikan mesej ralat yang lebih terperinci yang boleh membantu anda mengenal pasti puncanya.
Atas ialah kandungan terperinci Mengapa Mesin Tempatan Saya Gagal Menyambung ke Pelayan MySQL Jauh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!