首頁 >資料庫 >mysql教程 >為什麼我的 Python MySQL 連線失敗並顯示「不支援身份驗證外掛程式'caching_sha2_password'」?

為什麼我的 Python MySQL 連線失敗並顯示「不支援身份驗證外掛程式'caching_sha2_password'」?

Linda Hamilton
Linda Hamilton原創
2024-12-05 15:29:10288瀏覽

Why Does My Python MySQL Connection Fail with

由於驗證外掛程式不受支援而無法連接到 MySQL

在嘗試使用 Python 連接器建立與 MySQL伺服器的連線時,您可能會遇到錯誤「不支援身份驗證外掛程式『caching_sha2_password』。」當用戶端或伺服器不支援指定的驗證外掛程式時,可能會發生此錯誤。

根本原因:

在此特定實例中,錯誤的根本原因用於創建用戶的身份驗證插件與Python 連接器支援的插件之間不匹配。預設情況下,連接器支援「mysql_native_password」驗證插件,而使用者「lcherukuri」是使用「caching_sha2_password」插件建立的。

解決方案:

解決對於此問題,請確保用於建立使用者的驗證外掛程式與連接器支援的插件相符。在這種情況下,您可以在建立連線時指定「auth_plugin」參數,明確將其設定為「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()

附加說明:

  • 確認您使用的是正確的Python連接器套件(例如“mysql-connector-python”)而不是過時或不相容的版本(例如“mysql-connector”)。
  • 如果您遇到任何其他相關錯誤,請參閱 MySQL 文件以取得其他故障排除步驟。

以上是為什麼我的 Python MySQL 連線失敗並顯示「不支援身份驗證外掛程式'caching_sha2_password'」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn