【mysql】解決Python連接MySQL報錯:缺少cryptography庫

解決Python連接MySQL報錯:缺少cryptography庫

在使用 Python 連接 MySQL 數據庫時,有時可能會遇到這樣的錯誤:

RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods

這篇文章將帶你快速理解該錯誤的原因,并提供兩種實用的解決方法。


🧠 錯誤原因

MySQL 8.0 及以上版本默認使用 caching_sha2_passwordsha256_password 認證插件進行用戶身份驗證,這兩種方式比早期的 mysql_native_password 更安全。

而 PyMySQL 默認不包含對這兩種認證方式的支持,需要依賴 cryptography 這個第三方加密庫來完成密碼的加密處理。如果沒有安裝該庫,就會出現上述錯誤。


📌 解決方法

方法一:安裝 cryptography 庫(推薦)

如果你有權限安裝 Python 包,這是最直接的解決方法。

pip install cryptography

安裝完成后重新運行你的 Python 腳本即可。

適用場景

  • 本地開發環境
  • CI/CD 流水線
  • 可以自主安裝依賴的項目

方法二:修改MySQL用戶認證方式

如果你有數據庫管理員權限,可以將用戶認證方式改為傳統的 mysql_native_password

執行以下SQL語句(請替換用戶名和密碼):

ALTER USER '用戶名' IDENTIFIED WITH mysql_native_password BY '密碼';
FLUSH PRRIVILEGES;

適用場景

  • 沒有權限安裝 Python 包的環境
  • 臨時測試或兼容舊項目
  • 對安全性要求不極高的內網環境

📊 方法對比表

方法優點缺點適用場景
安裝 cryptography安全、官方推薦、一勞永逸需安裝額外依賴開發、測試、生產
修改認證方式無需安裝新包、快速解決安全性降低、需數據庫權限臨時測試、內網環境

🧩 解決方法速覽

在這里插入圖片描述


? 總結

  • 出現該錯誤是因為 MySQL 使用了新的加密認證方式,而 PyMySQL 需要 cryptography 庫來支持。
  • 推薦做法:在開發環境中直接安裝 cryptography
  • 備用方案:若無法安裝依賴,可臨時將用戶認證方式改為 mysql_native_password

根據你的實際環境和權限,選擇最適合的方案即可順利連接 MySQL 數據庫。


注意:修改認證方式會降低安全性,請謹慎在生產環境中使用。建議在測試或內部系統中使用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/920389.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/920389.shtml
英文地址,請注明出處:http://en.pswp.cn/news/920389.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

告別Java依賴!GISBox三維場景編輯+服務發布一站式工具橫評

在地理信息系統(GIS)技術快速發展的今天,選擇一款合適的工具對于提升工作效率和實現項目目標至關重要。GISBox與GeoServer作為兩款各具特色的GIS解決方案,分別面向不同的用戶需求和應用場景。本文將從界面閱讀感、安裝復雜度、服務…

智能客服多智能體(知識庫問答+情緒感知+工單路由)

一、概述 —— 目標與高層需求 目標:構建一個生產級的智能客服流水線,用多智能體(agent)分工協作完成用戶問答、情緒識別并在必要時自動生成/路由工單(ticket)。系統應滿足: 高答復準確率:通過 RAG(檢索增強生成)把回復基于公司知識庫(SOP、FAQ、產品文檔)。([Gra…

消息隊列核心問題解決方案:從丟失到重復消費的全方位保障

在分布式系統中,消息隊列作為解耦、削峰、異步通信的核心組件,其可靠性直接決定了整個系統的穩定性。然而,“消息丟失”“重復消費”“消息積壓”等問題卻如同隱雷,稍有不慎便會引發數據不一致、業務異常等嚴重后果。本文將圍繞“如何保證消息不丟失、不重復消費”這一核心…

API協作云:API→MCP極速構建MCP服務

一、背景與行業趨勢數字化時代,API 是企業互聯核心,API 協作云則實現連接能力躍升:高效管理 API 全生命周期,突破傳統接口管理局限,通過標準化設計、自動化測試和可視化監控,讓團隊高效協作,輕松…

重塑可觀測性成本:解析Coralogix的智能成本優化之道

在云原生與微服務架構成為主流的今天,可觀測性(Observability)已成為企業確保系統穩定、快速排障的必需品。然而,隨著數據量的爆炸式增長,傳統的可觀測性平臺所帶來的成本也在急劇攀升。企業常常陷入兩難境地&#xff…

實測阿里圖像編輯模型Qwen-Image-Edit:漢字也能無痕修改(附實測案例)

現在越來越多的人都開始用 AI 來生成圖片了,比如用 AI 生成節日海報、電商圖、游戲角色設計、封面圖、文章配圖等等。效率是真的快,而且往往生成得還都不賴。但有時一個「瑕疵」,會壞了整張圖片。使用圖像編輯,可能抽半天都抽不到…

為什么軟解碼依然重要?深入理解視頻播放與開發應用(視頻解碼)

為什么軟解碼依然重要?深入理解視頻播放與開發應用 摘要: 軟解碼(Software Decoding)是視頻解碼中最靈活的一種方式,完全依賴 CPU 來執行壓縮算法的逆過程。本文從原理、優勢與劣勢、典型應用、跨平臺實現到未來趨勢&a…

大模型微調 Prompt Tuning與P-Tuning 的區別?

Prompt Tuning 和 P-Tuning 都屬于 參數高效微調方法(PEFT, Parameter-Efficient Fine-Tuning),主要是為了避免對大模型全部參數進行訓練,而是通過小規模參數(prompt embedding)來適配下游任務。但兩者的實…

控制系統仿真之PID校正1-系統固有屬性(四)

一、PID校正概述PID校正是比例(Proportional)積分(Integral)微分(Derivative)校正的簡稱,是歷史最悠久,生命力最強的控制方式。其主要優點有:①原理簡單、使用方便②適應性強,可廣泛…

C語言————斐波那契數列(例題1)

小博在學習c語言時,總是會遇到一些很典型的例題,如:斐波那契數列,漢諾塔問題,冒泡排列問題,等等。小博決定匯總一下,今天講清斐波那契數列,后續持續更新。一、斐波那契數列斐波那契數…

Text to Speech技術詳解與實戰:GPT-4o Mini TTS API應用指南

Text to Speech技術詳解與實戰:GPT-4o Mini TTS API應用指南 一、概述 Text to Speech(TTS,文本轉語音)技術正在廣泛應用于博客配音、多語言音頻輸出與實時語音流等場景。越來越多的開發者希望將自然、流暢的AI語音集成到產品中…

數字ic后端Useful Skew到底怎么玩的?

CCOpt的Useful Skew到底怎么玩的?上圖里,我們可以看到,在CCOpt之前,這個chain上的slack為200ps/-100ps/200ps。我們想修復這-100ps的slack,就有兩個策略了:方法1:把F1的delay提前;方…

Linux 網絡配置與系統管理指南

文章目錄 1. 虛擬機網絡模式 1. 橋接模式 (Bridged) 2. NAT 模式 3. 僅主機模式 (Host-only) 2. 固定IP配置(橋接模式) 配置步驟: 3. 進程管理 1)查看進程:ps命令 2)終止進程 3)進程樹查看 4. 服務管理 1)systemctl管理服務 2)chkconfig服務管理 5. 動態監控 top命令 …

算法學習筆記:雙指針_滑動窗口專題

目錄 1.長度最小的子數組 2.無重復字符的最長子串 3.將x減少到0的最小操作數 4.最大連續1的個數Ⅲ 5.找到字符串中所有字母異位詞 6.水果成籃 7.串聯所有單詞的子串 8.最小覆蓋子串 1.長度最小的子數組:209. 長度最小的子數組 - 力扣(LeetCode&a…

Witsbb健敏思是哪個國家的品牌?澳洲純凈溯源,100+過敏原排除的敏寶專研品牌

在為敏感體質寶寶挑選營養補充品時,“品牌來源是否可靠”“品控標準是否嚴格”往往是寶爸寶媽的首要考量。源自澳大利亞的Witsbb健敏思,作為澳企Forestpark旗下的綜合膳食營養補充品牌,從誕生起便根植于澳洲嚴苛的保健品監管體系,…

gdbserver遠程調試和交叉編譯gdb

1、交叉編譯gdb 1.1下載源碼 Gdb源碼:wget https://ftp.gnu.org/gnu/gdb/gdb-15.2.tar.xz Gdb依賴的源碼:GMP、MPFR、ncurses(圖形庫) GMP源碼:wget https://ftp.gnu.org/gnu/gmp/gmp-6.3.0.tar.xz MPFR源碼&#xff1…

UE5.5模型導入FBX強制x軸向前Force Front XAxis

很多軟件軸向都是不同的 , 所以模型導入虛幻的時候 可以勾選Force Front XAxisUE5.5 在右上角設置 點擊右上角三個點就可以看到強制前X軸

Docker中如何記錄非交互式連接ssh用戶操作的所有命令記錄?

網羅開發(小紅書、快手、視頻號同名)大家好,我是 展菲,目前在上市企業從事人工智能項目研發管理工作,平時熱衷于分享各種編程領域的軟硬技能知識以及前沿技術,包括iOS、前端、Harmony OS、Java、Python等方…

渦旋場和撓場的對偶性方程組

要將渦旋場與撓場的動態對偶性以麥克斯韋方程組的形式嵌入愛因斯坦-嘉當理論的彎曲時空框架中。一、符號與幾何基礎1. 基本張量定義 度規張量: g_{\mu\nu} (描述時空彎曲, \mu,\nu 0,1,2,3 )。仿射聯絡: \Gamma^\la…

8.28日QT

思維導圖#include <iostream>using namespace std;int main() {int a0,b0,c0,d0;string i;cout << "請輸入一個字符串" << endl;getline(cin,i);int yi.size()-1;while(1){if(a<i[y]&&i[y]<z){aa1;}else if(A<i[y]&&i[y]…