Rumah >pangkalan data >tutorial mysql >Mengapa Sambungan MySQL Python Saya Gagal dengan 'Pemalam Pengesahan 'caching_sha2_password' tidak disokong'?

Mengapa Sambungan MySQL Python Saya Gagal dengan 'Pemalam Pengesahan 'caching_sha2_password' tidak disokong'?

Linda Hamilton
Linda Hamiltonasal
2024-12-05 15:29:10286semak imbas

Why Does My Python MySQL Connection Fail with

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:

  • Sahkan bahawa anda menggunakan pakej penyambung Python yang betul (cth., "mysql-connector-python") dan bukan versi lapuk atau tidak serasi (cth., "mysql-connector").
  • Jika anda menghadapi sebarang ralat lain yang berkaitan, rujuk dokumentasi MySQL untuk langkah penyelesaian masalah 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!

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