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

Python 連接 MySQL 報錯 ImportError: No module named MySQLdb 完美解決方案

     編輯:MySQL 綜合教學

Python 連接 MySQL 報錯 ImportError: No module named MySQLdb 完美解決方案

經典報錯 ImportError: No module named MySQLdb 通常因缺少 mysqlclient 或 MySQL-python 驅動。本文提供全平台、多版本兼容的安裝方案。

一、快速驗證

python -c "import MySQLdb"
# 無報錯即已安裝

二、推薦方案:mysqlclient (純 C 實現,性能更優,支持 Python 3)

Linux (Debian/Ubuntu)

sudo apt-get update
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
pip install mysqlclient

CentOS/RHEL

sudo yum install python3-devel mysql-devel gcc
pip install mysqlclient

macOS

brew install mysql-connector-c
pip install mysqlclient

Windows

pip install mysqlclient
# 或下載預編譯 whl:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient

三、舊方案:MySQL-python (僅 Python 2.7,停止維護)

wget https://sourceforge.net/projects/mysql-python/files/latest/download
tar -xzf MySQL-python-*.tar.gz
cd MySQL-python-*
python setup.py build
python setup.py install

常見編譯錯誤及修復

EnvironmentError: mysql_config not found

# 1. 確認 mysql_config 路徑
which mysql_config
# 輸出如 /usr/local/mysql/bin/mysql_config

# 2. 修改 setup_posix.py
vi setup_posix.py
# 找到 mysql_config.path = "mysql_config"
# 改為絕對路徑
mysql_config.path = "/usr/local/mysql/bin/mysql_config"

# 3. 重新編譯安裝
python setup.py build
python setup.py install

四、現代替代:PyMySQL (純 Python 實現,無需編譯)

pip install pymysql
# 代碼中兼容 MySQLdb API
import pymysql
pymysql.install_as_MySQLdb()
import MySQLdb  # 現在可用

五、Docker 環境一行搞定

# Dockerfile
RUN apt-get update && apt-get install -y default-libmysqlclient-dev gcc \
    && pip install mysqlclient

六、驗證連接

import MySQLdb
conn = MySQLdb.connect(host='localhost', user='root', passwd='pass', db='test')
cursor = conn.cursor()
cursor.execute("SELECT VERSION()")
print(cursor.fetchone())
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved