您现在的位置是:首页 > 正文

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

2024-02-01 02:56:36阅读 2

在学习“”编写你的第一个 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 

运行正常了,没有报错。

网站文章

  • Android随机点名器,Excel基础知识-详解随机点名器

    Android随机点名器,Excel基础知识-详解随机点名器

    说道制作个案例纯粹意外,我多少有点选择恐惧症,为了不在“选择”上纠结,就自己小玩了一下,就用了程序做了个选择器,其实很简单,就是有小时候玩的“点兵点将",稍微变化就成今天的案例!我一直的原则是用最少的...

    2024-02-01 02:56:30
  • Dubbo的负载均衡策略有哪些?

    主要有random(随机,这种是默认的负载均衡策略)、RoundRobin (轮询)、LeastActive (最少活跃数)、ConsistentHash(一致性hash)可以在暴露服务的时候使用lo...

    2024-02-01 02:56:01
  • 【OJ比赛日历】快周末了,不来一场比赛吗? #05.13-05.19 #14场

    【OJ比赛日历】快周末了,不来一场比赛吗? #05.13-05.19 #14场

    实时聚合多平台的(Kaggle、天池…)和(Leetcode、牛客…)比赛。本账号同时会推送最新的比赛消息,欢迎关注!更多比赛信息见或 点击文末以下信息仅供参考,以比赛官网为准。

    2024-02-01 02:55:55
  • Android 文件打开方法

    Android文件打开方法

    2024-02-01 02:55:47
  • Eclipse调试进阶-结合Dubbo调试实例分析

    Eclipse调试进阶-结合Dubbo调试实例分析

    本文你会掌握的Eclipse进阶技能:● Eclipse 调试窗口里显示多线程 ● 根据需要可以暂停某线程,然后在需要时候恢复 ● 使用Expression直观计算运行代码附件复杂的条件值 ● Step Into(F5) ● Step Over (F6) ● Step Return (F7) ● Drop to Frame ● Use Step Filt

    2024-02-01 02:55:18
  • 《Python数据分析与挖掘实战》第12章——电子商务网站用户行为分析及服务推荐(协同推荐)数据探索分析篇①1 背景与目标分析2.数据探索分析

    《Python数据分析与挖掘实战》第12章——电子商务网站用户行为分析及服务推荐(协同推荐)数据探索分析篇①1 背景与目标分析2.数据探索分析

    文章目录 1 背景与目标分析 2.数据探索分析 2.1 网页类型分析 2.1.1 统计各个网页类型所占的比例 2.1.2 网页107类型中的内部统计 2.1.3 统计带"?"问号网址类型统计 2.1.4 统计199类型中的具体类型占比 2.1.5 统计瞎逛用户中各个类型占比 2.2 点击次数分析 2.2.1 统计点击次

    2024-02-01 02:55:11
  • centos7下使用docker安装gitlab【转】

    centos7下使用docker安装gitlab【转】

    环境背景:Docker化已经成为一种热门,记录一下使用docker引擎安装gitlab的过程。测试环境:系统软件依赖CentOS 7.4GitLab(latest)docker-ce 18安装过程:1. 安装docker引擎并启动[root@server-10 ~]# yum instal...

    2024-02-01 02:55:02
  • select count(t.id)时遇到java.lang.ClassCastException: java.lang.Long

    重用以前的分页程序setTotalCount(sql)失败,遇到java.lang.ClassCastException: java.lang.Long异常 解决办法:将((Integer) result.get(0)).intValue();改为:((Long) result.get(0)).intValue(); 显然是sql统计语句返回类型改变了,类似问题可以

    2024-02-01 02:54:35
  • Vant-UI库和Element-UI库修改样式无效

    Vant-UI库和Element-UI库修改样式无效 最近用vue写页面时,发现使用vant的有些UI组件,而又不能满足自己的样式,修改CSS样式还是无效。css一般都会使用sass或者less,加了...

    2024-02-01 02:54:29
  • 通过实现AutoCloseable接口实现资源连接的关闭

    通过实现AutoCloseable接口实现资源连接的关闭

    自动关闭资源连接的好处在Java开发过程中,按照正常的设计开发的结构来讲,大部分程序应该是面向接口的开发,应该在接口里面提供所有的核心业务的功能,但是像及时释放连接资源的操作属于非核心业务功能。每次手...

    2024-02-01 02:54:22