Penyelesaian kepada ralat 13 apabila php menyambung ke MySQL
Apabila menggunakan php untuk menyambung ke MySQL, ralat 13 kadangkala berlaku Dalam artikel ini, saya akan memperkenalkan beberapa penyelesaian kepada masalah ini.
Pertama sekali, ralat 13 ialah masalah Kebenaran MySQL. Ini mungkin kerana pengguna tidak mempunyai kebenaran yang mencukupi semasa menyambung ke MySQL, mengakibatkan ketidakupayaan untuk menyambung ke MySQL. Jika anda ingin menyelesaikan masalah ini, anda perlu log masuk ke MySQL dan memberikan kebenaran yang mencukupi kepada pengguna.
Dalam artikel ini, saya akan memberikan anda beberapa penyelesaian:
Kaedah Pertama: Semak kebenaran MySQL pengguna yang anda gunakan
Menggunakan MySQL dalam PHP Apabila menyambung ke mengakses MySQL, kami perlu menyediakan nama pengguna dan kata laluan MySQL. Secara lalai, MySQL tidak membenarkan pengguna tanpa nama untuk menyambung. Oleh itu, kita perlu memastikan bahawa pengguna MySQL yang digunakan mempunyai kebenaran yang diperlukan.
Anda boleh menyemak kebenaran pengguna MySQL yang anda gunakan dengan arahan berikut:
SHOW GRANTS FOR 'username'@'localhost';
Jika pengguna anda tidak mempunyai kebenaran yang mencukupi, anda boleh memberikan kebenaran kepadanya menggunakan yang berikut arahan:
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
Sila ambil perhatian bahawa ini akan memberikan pengguna anda akses penuh kepada semua pangkalan data dan jadual.
Kaedah 2: Semak tetapan firewall
Dalam beberapa kes, firewall juga boleh menyebabkan ralat sambungan 13. Jika komputer anda menjalankan firewall, anda harus memastikan bahawa port MySQL (lalai ialah 3306) dibuka dalam peraturan firewall.
Anda boleh menyemak sama ada port anda dibuka menggunakan arahan berikut:
sudo ufw status
Jika port tidak dibuka, anda boleh membuka port menggunakan arahan berikut:
sudo ufw allow 3306/tcp
Kaedah Tiga: Tukar alamat bind dalam fail konfigurasi MySQL
Faktor lain ialah alamat bind dalam fail konfigurasi pelayan MySQL, yang lalai kepada localhost. Jika anda ingin menyambung ke MySQL dari mesin jauh, anda harus menukarnya kepada 0.0.0.0.
Sila ambil perhatian bahawa anda harus mengkonfigurasi tembok api anda dengan sewajarnya apabila menggunakan kaedah ini untuk memastikan keselamatan.
Langkah-langkah untuk menukar alamat bind adalah seperti berikut:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address = 0.0.0.0
sudo systemctl restart mysql
Ini adalah beberapa cara biasa untuk menyelesaikan ralat MySQL sambungan PHP 13. Jika anda telah mencuba kaedah di atas tetapi masih tidak dapat menyelesaikan isu tersebut, anda harus menyemak sama ada versi PHP dan MySQL anda serasi.
Semoga artikel ini membantu anda!
Atas ialah kandungan terperinci Apa yang perlu dilakukan jika php menyambung kepada ralat mysql 13. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!