Tidak Dapat Memuatkan Pemalam Pengesahan 'caching_sha2_password': Penyelesaian Ralat
Ralat "Tidak dapat menemui dialek untuk digunakan. java.sql. SQLException: Tidak dapat memuatkan pemalam pengesahan 'caching_sha2_password'." berlaku apabila aplikasi tidak dapat mewujudkan sambungan dengan pangkalan data MySQL kerana ketidakpadanan pemalam pengesahan.
Bermula dengan MySQL versi 8.0.4, pemalam pengesahan lalai untuk pelayan MySQL telah bertukar daripada "mysql_native_password" kepada "caching_sha2_password." Ini menunjukkan bahawa percubaan sambungan mesti menggunakan pemalam "caching_sha2_password" untuk berjaya mengesahkan dengan pangkalan data.
Penyelesaian:
Untuk menyelesaikan isu, anda perlu mengubah suai Akaun pengguna MySQL untuk menggunakan pemalam "mysql_native_password" sebaliknya. Anda boleh melakukan ini dengan menjalankan arahan berikut:
ALTER USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
Ganti "nama pengguna" dengan akaun pengguna pangkalan data, "nama hos" dengan hos dari mana sambungan dibuat (cth., 'localhost'), dan "kata laluan" dengan kata laluan pengguna. Perintah ini akan mengubah akaun pengguna yang ditentukan untuk menggunakan pemalam "mysql_native_password", membolehkan sambungan berjaya.
Nota Tambahan:
CREATE USER 'username'@'hostname' IDENTIFIED WITH mysql_native_password BY 'password';
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan \'Tidak Dapat Memuatkan Pemalam Pengesahan \'caching_sha2_password\'\' Ralat MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!