You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Django使用mysql-connector-python替代mysqlclient?

Django 4.1用mysql-connector-python替代mysqlclient配置方案

正确配置数据库引擎

要跳过mysqlclient改用mysql-connector-python,必须把settings.py里的数据库ENGINE设为mysql.connector.django,完整配置示例:

DATABASES = {
    'default': {
        'ENGINE': 'mysql.connector.django',
        'NAME': '你的目标MySQL数据库名',
        'USER': 'MySQL用户名',
        'PASSWORD': 'MySQL密码',
        'HOST': 'localhost',
        'PORT': '3306',
        'OPTIONS': {
            'charset': 'utf8mb4',
            'autocommit': True,
        },
    }
}

解决“无法导入后端”的问题

之前提示'mysql.connector.django'不是可用的数据库后端,按以下步骤排查:

  • 先确认mysql-connector-python安装路径正确:执行pip3 show mysql-connector-python,查看输出的Location是否在当前Python环境的site-packages目录下
  • 如果用了虚拟环境,必须激活环境后再安装依赖和运行manage.py
  • 要是仍无法识别,在settings.py顶部手动注册后端:
import django
from django.conf import settings

if not settings.configured:
    django.setup()

try:
    from mysql.connector.django import base
    django.db.backends.register_backend('mysql.connector.django', base.DatabaseWrapper)
except ImportError:
    pass

验证配置有效性

配置完成后先执行python manage.py inspectdb,如果能正常输出MySQL里的表结构(哪怕是空的),说明连接没问题,再运行python manage.py migrate就不会再提示mysqlclient相关错误了。

数据迁移补充

别忘了先备份sqlite3的数据:

python manage.py dumpdata > data.json

MySQL配置好并完成migrate后,导入数据:

python manage.py loaddata data.json

内容的提问来源于stack exchange,提问作者JM1MBP2021

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 04:15:08