执行Django 的迁移命令报错[1193, Unknown system variable default_storage_engine]

在学习""编写你的第一个 Django 应用程序,第2部分"时候,遇到一个问题。

执行迁移命令 python manage.py makemigrations polls 后,报错:

migrations.py:109: RuntimeWarning: Got an error checking a consistent migration

history performed for database connection 'default': (1193, "Unknown system vari

able 'default_storage_engine'") RuntimeWarning,

网上查询确定原因是Django 和 mysql 版本不兼容导致的,需要匹配对应版本

Django连接MySql数据库之版本不兼容问题的解决办法

发现原来Django 3.2.18 不再支持 MySQL 5.5 ,必须5.6版本以上。

我本地装的是Django 3.2.18,Mysql 5.5,因此存在版本不兼容问题,就无法正常连接数据库了。这里提供了以下解决办法。

如何查看Django和mysql的版本呢?

查看Django版本:

1 cmd状态下 (注:管理员运行状态)

2 python -m django --version

查看MySql版本:

1 cmd命令下

2 mysql -u用户名 -P端口 -p密码

3 select version();

解决办法:

一、给Django进行版本降级

(阿~emmm... 正常人当然都不会采取这种方式啦,老纸辛苦安装的新版本干嘛要降级呢 [捂脸笑],下面我们主要来介绍第二个方法)

二、升级MySql版本:

本文是以 mysql 5.5 升级为 mysql 5.7.10为例。

1、这里我们进行手动安装配置MySql,首先卸载本地mysql,下载mysql 5.7.10的解压包,注意路径不要用中文,

2、然后在该目录下自建一个配置文件my.ini,添加如下配置信息。

[mysql]

#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#设置3306端口

port = 3306

#设置mysql的安装目录(这里是你解压后的路径)

basedir=C:\Program Files\MySQL\MySQL Server 5.7

#设置mysql数据库的数据的存放目录(要提前创建好 F:\MySQL Datafiles 文件夹)

datadir=F:\MySQL Datafiles

#允许最大连接数

max_connections=200

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

=======================================

重启mysql后,再去执行Django 的迁移命令 python manage.py makemigrations polls

运行正常了,没有报错。

相关推荐
鸡鸭扣1 小时前
Docker:3、在VSCode上安装并运行python程序或JavaScript程序
运维·vscode·python·docker·容器·js
paterWang1 小时前
基于 Python 和 OpenCV 的酒店客房入侵检测系统设计与实现
开发语言·python·opencv
东方佑2 小时前
使用Python和OpenCV实现图像像素压缩与解压
开发语言·python·opencv
神秘_博士2 小时前
自制AirTag,支持安卓/鸿蒙/PC/Home Assistant,无需拥有iPhone
arm开发·python·物联网·flutter·docker·gitee
Moutai码农3 小时前
机器学习-生命周期
人工智能·python·机器学习·数据挖掘
m0_748255414 小时前
vscode配置django环境并创建django项目(全图文操作)
vscode·django·sqlite
小白教程4 小时前
python学习笔记,python处理 Excel、Word、PPT 以及邮件自动化办公
python·python学习·python安装
武陵悭臾5 小时前
网络爬虫学习:借助DeepSeek完善爬虫软件,实现模拟鼠标右键点击,将链接另存为本地文件
python·selenium·网络爬虫·pyautogui·deepseek·鼠标右键模拟·保存链接为htm
代码猪猪傻瓜coding5 小时前
关于 形状信息提取的说明
人工智能·python·深度学习
码界筑梦坊6 小时前
基于Flask的第七次人口普查数据分析系统的设计与实现
后端·python·信息可视化·flask·毕业设计