Menyambung ke Pangkalan Data MySQL Kegagalan daripada PHP: Menyelesaikan Isu "Akses Ditolak"
Percubaan untuk berinteraksi dengan pangkalan data MySQL daripada PHP kadangkala boleh mengakibatkan dalam ralat "Akses ditolak". Dalam contoh ini, ralat khusus yang diterima ialah "Sambung gagal: Akses ditolak untuk pengguna 'root'@'localhost' (menggunakan kata laluan: YES)." Walaupun mempunyai akses kepada pangkalan data melalui baris arahan dan menggunakan kata laluan yang betul, halaman web gagal disambungkan.
Untuk menyelesaikan isu ini, langkah berikut telah diambil:
Log masuk ke MySQL sebagai pengguna akar menggunakan:
mysql -u root -p -h localhost
Buat pengguna baharu dengan yang dikehendaki kelayakan:
CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'new_password';
Buat pangkalan data untuk digunakan:
CREATE DATABASE database_name;
Berikan keistimewaan kepada pengguna baharu untuk pangkalan data:
GRANT ALL PRIVILEGES ON database_name.* TO 'new_user'@'localhost';
Log keluar daripada akaun akar dan log masuk sebagai pengguna baharu:
quit; mysql -u new_user -p -h localhost
Import skema pangkalan data dan data menggunakan skrip:
source database_schema.sql;
Selepas perubahan ini dilaksanakan, Skrip PHP berjaya disambungkan ke pangkalan data MySQL menggunakan panggilan berikut:
$conn = new mysqli("localhost", "new_user", "new_password", "database_name");
Dengan mengikuti langkah-langkah ini, Ralat "Akses ditolak" telah diselesaikan, membenarkan fungsi PHP berinteraksi dengan pangkalan data MySQL.
Atas ialah kandungan terperinci Mengapa Kod PHP Saya Mendapat 'Akses Ditolak' Apabila Menyambung ke MySQL, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!