解决 Django `No module named 'MySQLdb'` 报错

image

解决 Django No module named 'MySQLdb' 报错

你这个报错是因为 Django 默认使用 MySQLdb (也就是 mysqlclient 库),但是你的虚拟环境里没装。

解决方法有两个常见方向:


✅ 方法一:安装 mysqlclient(推荐,性能更好)

  1. 确认虚拟环境已激活:

    .venv\Scripts\activate
    
  2. 安装依赖:

    pip install mysqlclient
    

⚠️ 如果安装时报错(Windows 上常见),需要安装 Visual C++ Build Tools,或者改用下面方法二。


✅ 方法二:用 pymysql 替代

  1. 在虚拟环境中安装:

    pip install pymysql
    
  2. 打开项目目录下的 __init__.py(例如 djangoProject1/__init__.py),加上:

    import pymysql
    pymysql.install_as_MySQLdb()
    

这样 Django 会把 pymysql 当作 MySQLdb 使用。


📌 建议

  • 如果你用 Windows,安装 mysqlclient 很容易出编译问题,新手推荐用 pymysql 先跑通。
  • 如果是生产环境,还是推荐 mysqlclient(更快、更稳定)。

posted @ 2025-09-01 14:04  o李一波o  阅读(59)  评论(0)    收藏  举报