Rumah >pangkalan data >tutorial mysql >Mengapa Sambungan MySQL Python Saya Gagal dengan 'Pemalam Pengesahan 'caching_sha2_password' tidak disokong'?
Tidak Dapat Menyambung ke MySQL Kerana Pemalam Pengesahan Tidak Disokong
Semasa cuba mewujudkan sambungan ke pelayan MySQL menggunakan penyambung Python, anda mungkin menghadapi ralat "Pemalam pengesahan 'caching_sha2_password' tidak disokong." Ralat ini boleh timbul apabila pemalam pengesahan yang ditentukan tidak disokong oleh klien atau pelayan.
Punca Punca:
Dalam keadaan khusus ini, punca ralat ialah ketidakpadanan antara pemalam pengesahan yang digunakan untuk mencipta pengguna dan pemalam yang disokong oleh penyambung Python. Secara lalai, penyambung menyokong pemalam pengesahan "mysql_native_password", manakala pengguna "lcherukuri" dicipta menggunakan pemalam "caching_sha2_password".
Penyelesaian:
Untuk menyelesaikannya isu ini, pastikan pemalam pengesahan yang digunakan untuk mencipta pengguna sepadan dengan pemalam yang disokong oleh penyambung. Dalam kes ini, anda boleh menentukan parameter "auth_plugin" semasa membuat sambungan, secara eksplisit menetapkannya kepada "mysql_native_password":
import mysql.connector cnx = mysql.connector.connect(user='lcherukuri', password='password', auth_plugin='mysql_native_password', host='127.0.0.1', database='test') cnx.close()
Nota Tambahan:
Atas ialah kandungan terperinci Mengapa Sambungan MySQL Python Saya Gagal dengan 'Pemalam Pengesahan 'caching_sha2_password' tidak disokong'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!