Rumah > Artikel > pembangunan bahagian belakang > Mengapa PHP tidak boleh menyambung ke pangkalan data?
PHP, sebagai bahasa skrip sebelah pelayan yang biasa digunakan, digunakan secara meluas dalam pembangunan web. Dalam proses pembangunan aplikasi, pangkalan data adalah komponen penting. Walau bagaimanapun, kadangkala kita menghadapi masalah biasa, iaitu, PHP tidak dapat menyambung ke pangkalan data Pada masa ini, kita perlu menyelesaikan masalah tersebut.
Artikel ini akan membincangkan sebab berikut:
Pelayan pangkalan data tidak boleh disambungkan
Umum Dalam kes ini, PHP akan menggunakan protokol TCP/IP apabila menyambung ke pangkalan data, dan alamat IP serta port pelayan pangkalan data perlu dikonfigurasikan dalam PHP. Pertama, kita perlu mengesahkan bahawa pelayan pangkalan data berjalan dengan betul dan tetapan sambungan adalah betul. Sebagai contoh, cuba gunakan telnet atau arahan Ping untuk mengesan sama ada pelayan boleh diakses.
Jika anda menguji secara setempat, anda boleh terus menggunakan localhost atau 127.0.0.1 untuk menyambung. Jika anda menyambung ke pangkalan data pada pelayan jauh, anda perlu mengesahkan sama ada sambungan rangkaian boleh dipercayai. Perlu diingatkan di sini bahawa tembok api pelayan pangkalan data juga boleh menjejaskan sambungan.
Ralat konfigurasi parameter sambungan pangkalan data
Jika parameter sambungan yang salah digunakan, PHP tidak akan dapat menyambung ke pangkalan data seperti biasa. Masalah ini biasanya berlaku dalam fail konfigurasi, seperti dalam MySQL, di mana parameter seperti alamat pangkalan data, pemilihan pangkalan data, dan nombor port perlu ditetapkan dengan betul. Terutama nombor port, jika ia ditetapkan dengan tidak betul, permintaan pengesahan dan sambungan tidak akan dimajukan dengan betul.
Penyelesaian: Anda perlu menyemak sama ada parameter sambungan pangkalan data dalam fail konfigurasi fail PHP adalah betul. Anda juga boleh mengeluarkan gesaan ralat yang berkaitan daripada fungsi mysql_error() PHP selepas sambungan gagal.
Nama pengguna/kata laluan pangkalan data salah
Apabila nama pengguna atau kata laluan pangkalan data yang salah digunakan, permintaan sambungan PHP akan ditolak. Masalah ini biasanya berlaku apabila pelayan jauh menyambung ke pangkalan data, kerana apabila menyambung ke pangkalan data dari jauh, akaun dan kata laluan pelayan pangkalan data perlu digunakan untuk pengesahan. Pada masa ini, menggunakan nama pengguna atau kata laluan yang salah, PHP tidak akan dapat menyambung ke pangkalan data seperti biasa.
Penyelesaian: Anda perlu mengesahkan sama ada nama pengguna/kata laluan yang digunakan semasa PHP menyambung ke pangkalan data adalah betul, dan ia dibenarkan dengan betul kepada pengguna yang memerlukan akses.
Kebenaran pengguna pangkalan data tidak mencukupi
Apabila nama pengguna yang menyambung ke pangkalan data tidak mempunyai kebenaran yang mencukupi untuk mengakses pangkalan data yang ditentukan, kegagalan sambungan akan berlaku. Ini biasanya berlaku apabila pengguna baharu tidak diberikan akses kepada MySQL. Dalam MySQL, penyataan GRANT digunakan untuk membenarkan pengguna Jika pengguna yang diberi kuasa tidak mempunyai kebenaran yang mencukupi, dia tidak akan dapat mengakses pangkalan data.
Penyelesaian: Anda perlu mengesahkan sama ada nama pengguna yang digunakan untuk menyambungkan PHP ke pangkalan data telah diberikan kebenaran dan sama ada pelayan tempat kebenaran dikawal ditetapkan dengan betul.
Pemalam PHP tidak dipasang
PHP perlu memasang pemalam pangkalan data yang sepadan untuk menyambung ke pangkalan data. Jika PHP tidak memasang pemalam yang sepadan, ia tidak boleh menyambung ke pangkalan data. Sebagai contoh, dalam MySQL sambungan MySQLi atau PDO mesti dipasang.
Penyelesaian: Anda perlu mengesahkan sama ada PHP telah memasang sambungan pangkalan data yang diperlukan dan mengkonfigurasinya dengan sewajarnya.
Isu firewall
Apabila tetapan firewall tidak betul semasa menyambung ke pangkalan data, sambungan juga akan gagal. Ini biasanya berlaku apabila cuba menyambung ke pangkalan data di internet. Pada ketika ini, tetapan tembok api mungkin menghalang PHP daripada menyambung ke pangkalan data sasaran.
Penyelesaian: Sediakan peraturan tembok api dengan betul untuk membenarkan sambungan PHP.
Ringkasan:
Apabila PHP menyambung ke pangkalan data, anda mungkin menghadapi pelbagai masalah. Di atas menyediakan beberapa penyelesaian. Ia perlu disiasat dari pelbagai aspek. Secara amnya, operasi berikut dilakukan:
Rangkaian asas Mekanisme sambungan dan pengesahan adalah rumit, tetapi dengan menyelesaikan masalah melalui kaedah di atas, masalah sambungan PHP ke pangkalan data boleh diselesaikan dalam kebanyakan kes.
Atas ialah kandungan terperinci Mengapa PHP tidak boleh menyambung ke pangkalan data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!