MySQL: Akses Ditolak untuk Pengguna Bukan Root
Masalah:
Apabila cuba untuk log masuk ke MySQL sebagai pengguna bukan root, ralat "Akses ditolak untuk pengguna 'test'@'localhost' (menggunakan kata laluan: YES)" ditemui, walaupun telah mencipta pengguna dan memberikan keistimewaan.
Langkah-Langkah yang Diambil untuk Mencipta Pengguna dan Keistimewaan:
Isu dengan Akses Pengguna Bukan Root:
Isu timbul apabila cuba log masuk sebagai bukan root pengguna.
Penyelesaian:
Untuk menyelesaikan ralat yang ditolak akses, elakkan memberikan semua keistimewaan ke atas semua pangkalan data kepada pengguna bukan root. Amalan ini tidak selamat dan menjejaskan integriti sistem. Sebaliknya, berikan hanya keistimewaan yang diperlukan kepada pengguna.
Grant Command:
Arahan berikut boleh digunakan untuk memberikan keistimewaan tertentu kepada pengguna:
GRANT <privileges> ON database.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Sebagai contoh, perintah berikut memberikan memasukkan, memilih, memadam dan mengemas kini keistimewaan pada pangkalan data "test":
GRANT INSERT, SELECT, DELETE, UPDATE ON test.* TO 'user'@'localhost' IDENTIFIED BY 'password';
Maklumat Tambahan:
Untuk senarai terperinci semua keistimewaan, rujuk dokumentasi MySQL. Untuk melihat maklumat yang berkaitan dengan hos pengguna, laksanakan pertanyaan berikut (log masuk sebagai "root"):
select Host, User from mysql.user;
Atas ialah kandungan terperinci Akses MySQL Ditolak: Mengapa Pengguna Bukan Root Saya Tidak Boleh Bersambung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!