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

Django连接SingleStore报错:Unknown system variable 'default_storage_engine'

解决Django连接SingleStore时"Unknown system variable 'default_storage_engine'"报错

问题原因

Django的mysql.connector.django引擎会尝试访问MySQL特有的default_storage_engine系统变量,但SingleStore(原MemSQL)并不支持这个变量,它使用default_table_type定义默认表类型,因此触发兼容性报错。

解决方案

方案1:使用SingleStore官方Django后端(推荐)

SingleStore提供了专属的Django后端,已处理好与Django的兼容性问题,步骤如下:

  1. 安装官方后端包:
pip install django-singlestore
  1. 修改数据库配置中的ENGINE为django_singlestore:
DATABASES = {
    'default': {
        'ENGINE': 'django_singlestore',
        'HOST': 'HOST',
        'NAME': 'NAME',
        'USER': 'root',
        'PASSWORD': '********',
        'PORT': '3306',
        'OPTIONS': {
            'charset': 'utf8mb4',
        }
    }
}

方案2:兼容现有mysql.connector.django引擎

如果无法更换引擎,可通过添加初始化命令绕过变量检查,在OPTIONS中指定init_command设置SingleStore兼容的默认表类型:

DATABASES = {
    'default': {
        'ENGINE': 'mysql.connector.django',
        'HOST': 'HOST',
        'NAME': 'NAME',
        'USER': 'root',
        'PASSWORD': '********',
        'PORT': '3306',
        'OPTIONS': {
            'charset': 'utf8mb4',
            # SingleStore 6.8版本默认表类型为MEMORY
            'init_command': "SET default_table_type='MEMORY'"
        }
    }
}

同时需确保Django的数据库操作不依赖MySQL特有的存储引擎逻辑,避免后续兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 00:34:58