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

如何用Python3连接MariaDB5.5.52?Django迁移遇版本不兼容报错

解决Django 4.1.3连接MariaDB 5.5.52的迁移报错问题

方案一:降级Django到兼容版本

Django 3.2.x是长期支持版本,完全兼容MariaDB 5.5,操作步骤:

  • 卸载当前Django:pip uninstall django
  • 安装指定兼容版本:pip install django==3.2.25(选3.2系列最新版,带安全更新)
  • 重新执行迁移命令:python manage.py migrate

方案二:绕过Django的版本检测(仅应急,不推荐生产环境用)

这种方法能暂时解决报错,但可能引发未知兼容性问题,谨慎使用:

  1. 找到Python环境中Django安装目录下的django/db/backends/mysql/base.py文件
  2. 定位到版本检测的代码段,通常是这样:
if version < (10, 3):
    raise NotSupportedError("MariaDB 10.3 or later is required (found %d.%d.%d)" % version)
  1. 直接注释掉这段抛出异常的代码,或者把版本判断条件改成version < (5, 5)
  2. 保存文件后重新执行python manage.py migrate

额外确认:Python 3.8与MariaDB 5.5的连接配置

你当前用的PyMySQL 1.0.2完全兼容Python3.8和MariaDB5.5,只需确保settings.py里的数据库配置正确:

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

注意:MariaDB5.5建议用utf8mb4字符集,避免Unicode字符存储问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 16:20:25