Django3.2配置MySQL数据库引擎报错,求解决方案
解决Django 3.2配置MySQL数据库时的ModuleNotFoundError问题
你遇到的问题本质是缺少对应的MySQL数据库驱动——Django本身并不包含连接MySQL所需的底层驱动,必须手动安装对应依赖。以下分两种引擎的配置方案说明:
方案1:使用官方推荐的django.db.backends.mysql引擎
- 安装依赖驱动
mysqlclient- 在终端执行安装命令:
pip install mysqlclient - 注意:Linux系统需先安装系统级依赖(Debian/Ubuntu执行
sudo apt-get install libmysqlclient-dev,CentOS执行sudo yum install mysql-devel),否则编译安装会失败;Windows用户若遇安装错误,可下载对应Python版本的预编译.whl文件手动安装。
- 在终端执行安装命令:
- 配置
settings.py中的数据库参数:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '你的数据库名', 'USER': 'MySQL用户名', 'PASSWORD': 'MySQL密码', 'HOST': 'localhost', # 或你的MySQL服务器地址 'PORT': '3306', # MySQL默认端口 } }
方案2:使用mysql.connector.django引擎
- 安装对应的驱动
mysql-connector-python- 在终端执行安装命令:
pip install mysql-connector-python
- 在终端执行安装命令:
- 配置
settings.py:DATABASES = { 'default': { 'ENGINE': 'mysql.connector.django', 'NAME': '你的数据库名', 'USER': 'MySQL用户名', 'PASSWORD': 'MySQL密码', 'HOST': 'localhost', 'PORT': '3306', } }
额外排查要点
- 确保激活了项目使用的虚拟环境,避免依赖安装到全局Python环境导致项目无法识别。
- 检查版本兼容性:Django 3.2要求
mysqlclient版本≥1.4.3,mysql-connector-python版本≥2.0.0。 - 安装完成后可在Python交互环境测试:执行
import MySQLdb(对应mysqlclient)或import mysql.connector(对应mysql-connector-python),无报错则说明安装成功。
内容的提问来源于stack exchange,提问作者John
相关产品推荐
相关产品推荐

