Rumah >pangkalan data >tutorial mysql >Mengapa Sambungan MySQL Saya Gagal dengan Ralat 'caching_sha2_password'?

Mengapa Sambungan MySQL Saya Gagal dengan Ralat 'caching_sha2_password'?

Patricia Arquette
Patricia Arquetteasal
2024-12-27 06:23:10484semak imbas

Why is My MySQL Connection Failing with the

Ralat Ditemui: Pemalam Pengesahan 'caching_sha2_password' Tidak Disokong

Dalam konteks sambungan pangkalan data menggunakan penyambung MySQL Python, pengguna mungkin menghadapi ralat yang menunjukkan bahawa pemalam pengesahan 'caching_sha2_password' tidak disokong. Ralat ini biasanya timbul apabila cuba mewujudkan sambungan menggunakan pemalam pengesahan mysql_native_password.

Punca Ralat

Punca isu ini terletak pada ketidakpadanan antara pemalam pengesahan yang dinyatakan dalam percubaan sambungan dan pemalam yang disokong pada pelayan MySQL. Secara lalai, pelayan MySQL mungkin tidak menyokong pemalam 'caching_sha2_password', yang diperlukan apabila menggunakan pemalam mysql_native_password untuk pengesahan pengguna.

Penyelesaian

Untuk menyelesaikan ralat ini, terdapat dua pendekatan yang mungkin:

  1. Konfigurasikan Pelayan MySQL untuk Menyokong Pemalam 'caching_sha2_password': Ubah suai fail konfigurasi pelayan MySQL (my.cnf) dengan menambah baris berikut:
default_authentication_plugin=caching_sha2_password

Mulakan semula pelayan MySQL untuk perubahan kepada berkuat kuasa.

  1. Nyatakan 'mysql_native_password' Pemalam Pengesahan Secara Eksplisit: Sebagai alternatif, pengguna boleh menentukan pemalam mysql_native_password secara eksplisit semasa persediaan sambungan. Untuk mencapai ini, tambahkan parameter berikut pada fungsi connect():
auth_plugin='mysql_native_password'

Ini akan mengatasi pemalam pengesahan lalai dan memaksa sambungan untuk menggunakan mysql_native_password.

Dengan melaksanakan salah satu daripada penyelesaian ini, pengguna boleh mewujudkan sambungan yang berjaya ke pelayan MySQL dengan pemalam pengesahan yang dikehendaki.

Atas ialah kandungan terperinci Mengapa Sambungan MySQL Saya Gagal dengan Ralat 'caching_sha2_password'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn