Penggunaan gabungan PHP dan MySQL ialah cara biasa untuk membangunkan tapak web, dan hubungan antara kedua-duanya adalah sangat penting. Walau bagaimanapun, kod ralat 2002 kadangkala berlaku semasa penggunaan, mengakibatkan ketidakupayaan untuk menyambung ke pangkalan data Artikel ini akan meneroka punca dan penyelesaian masalah ini.
Kod ralat 2002 biasanya bermakna perkhidmatan MySQL pada pelayan tidak boleh ditemui atau dimulakan. Ralat ini mungkin disebabkan oleh banyak sebab, beberapa sebab biasa disenaraikan di bawah:
1) Pelayan MySQL tidak dimulakan
Ini adalah salah satu sebab yang paling biasa, jika perkhidmatan MySQL pada pelayan Jika ia tidak dimulakan, maka anda tidak boleh menyambung kepadanya. Pada sistem linux, anda boleh menyemak status perkhidmatan MySQL melalui arahan berikut:
systemctl status mysql.service
2) Pelayan MySQL menggunakan port yang salah
Lalai Di bawah keadaan, pelayan MySQL menggunakan port 3306. Jika perkhidmatan MySQL pada pelayan menggunakan port lain, sambungan akan gagal. Anda boleh menyemak port yang digunakan oleh perkhidmatan MySQL dengan menggunakan arahan berikut:
sudo netstat -tunlp | grep 3306
Jika ada tiada 3306 dalam hasilnya, Ini bermakna perkhidmatan tidak dimulakan atau menggunakan port lain.
3) Alamat IP pelayan MySQL tidak betul
Jika alamat IP pelayan MySQL yang dinyatakan tidak betul, sambungan juga akan gagal. Anda perlu memastikan alamat IP adalah betul dan boleh diakses daripada pelayan PHP.
4) Kebenaran akses fail PHP tidak mencukupi
Jika fail PHP tidak mempunyai kebenaran untuk mengakses perkhidmatan MySQL, sambungan akan gagal. Perlu memastikan bahawa skrip PHP mempunyai kebenaran yang mencukupi untuk mengakses pelayan MySQL.
Apabila kod ralat 2002 berlaku, anda boleh menyelesaikannya dari aspek berikut:
1) Semak sama ada perkhidmatan MySQL dimulakan
Anda boleh menggunakan arahan berikut untuk memulakan perkhidmatan MySQL:
sudo systemctl start mysql.service
Jika perkhidmatan MySQL telah dimulakan, anda boleh menggunakan arahan berikut untuk mulakan semula perkhidmatan:
sudo systemctl restart mysql.service
Jika perkhidmatan MySQL gagal dimulakan, anda boleh menyemak ralat dengan arahan berikut:
sudo journalctl -xe
2) Semak MySQL Adakah pelayan menggunakan port yang betul
Jika pelayan MySQL menggunakan port selain 3306, kod PHP perlu diubah suai untuk mencerminkan port yang betul.
3) Semak sama ada alamat IP pelayan MySQL adalah betul
Anda perlu memastikan alamat IP pelayan MySQL yang dinyatakan adalah betul dan boleh diakses daripada pelayan PHP.
4) Semak sama ada kebenaran capaian fail PHP adalah mencukupi
Perlu memastikan bahawa fail PHP mempunyai kebenaran yang mencukupi untuk mengakses pelayan MySQL. Anda boleh menyemak kebenaran akses fail PHP dengan menjalankan arahan berikut:
ls -l /path/to/php/file.php
Anda perlu memastikan bahawa pemilik dan kumpulan daripada fail adalah sama seperti fail PHP lain yang sama.
5) Naik taraf versi pelayan MySQL
Jika versi pelayan MySQL terlalu lama, sambungan mungkin gagal. Menaik taraf versi pelayan MySQL kadangkala boleh menyelesaikan isu ini.
6) Lumpuhkan tembok api
Tembok api mungkin memintas permintaan sambungan pelayan MySQL. Anda boleh cuba melumpuhkan firewall dan menyambung semula ke pelayan MySQL.
Di atas adalah kaedah biasa untuk menyelesaikan kod ralat 2002. Jika masalah masih tidak dapat diselesaikan, anda boleh menyemak log ralat MySQL pada pelayan atau mendapatkan sokongan teknikal lain.
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan kod ralat mysql php 2002. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!