首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Windows 安裝 mysqlclient (MySQL-python) 1.2.5 失敗:缺少 config-win.h 解決方案

     編輯:MySQL 綜合教學

Windows 安裝 mysqlclient (MySQL-python) 1.2.5 失敗:缺少 config-win.h 解決方案

Windows 下 pip install mysqlclient 或 MySQL-python 經常報 fatal error C1083: Cannot open include file: 'config-win.h'。原因是源碼編譯需要 MySQL C 客戶端庫的開發檔案(headers/libs),而官方 Windows 安裝包預設不包含。最簡解法:使用預編譯 Wheel。

一、錯誤現象

_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory
error: command 'cl.exe' failed with exit status 2

二、解決方案:下載預編譯 .whl

  1. 訪問 Christoph Gohlke 的 Python 擴充庫頁面(或鏡像站)。
  2. 找到匹配項:
  • Python 版本:cp37 (3.7)、cp38 (3.8)、cp39 (3.9) 等
  • 位元:win32 (32位) / win_amd64 (64位)
  • 檔名範例:mysqlclient‑1.4.6‑cp38‑cp38‑win_amd64.whl
pip install PyMySQL
# 代碼中透明替換
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb  # 實際走 PyMySQL

優點:零依賴、跨平台、支援 eventlet/gevent 協程。缺點:高併發效能略低於 mysqlclient。

四、若必須自行編譯(不建議)

  1. 安裝 Visual C++ Build Tools(含 Windows SDK)。
  2. 下載 MySQL Connector/C 6.0.2 (或更高) 開發包,解壓至 C:\mysql-connector-c。
  3. 設定環境變數:
SET MYSQL_DIR=C:\mysql-connector-c
SET INCLUDE=%MYSQL_DIR%\include;%INCLUDE%
SET LIB=%MYSQL_DIR%\lib;%LIB%
  1. pip install mysqlclient。

但極易踩版本不匹配、Runtime Library 不一致(MT/MD)等坑,強烈不推薦。

五、驗證安裝

python -c "import MySQLdb; print(MySQLdb.__version__)"

結語:Windows 下 Python C 擴充套件安裝首選預編譯 Wheel。mysqlclient 官方不再提供 Windows 二進制,Gohlke 頁面是社區公認標準源。若專案允許,直接改用 PyMySQL 省去編譯煩惱,生產環境經 OpenStack、大量 Flask/Django 專案驗證穩定可靠。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved