Django2.2连接mysql数据库出现django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is requ...

在使用Django2.2开发的时候,想要使用mysql数据库,在settings.py文件中更改命令:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'python',
'USER': "root",
'PASSWORD': "yhr2323214310",
'HOST': '',
'PORT': ''

}
}

再安装好pymysql,然后在__init__.py文件中添加:

import pymysql

pymysql.install_as_MySQLdb()

然后在models中创建好表类后,进行数据迁移时出现问题:

django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None

上网查一下解决方法,费了好大劲

解决方法:

1.找到base.py文件,我的是在~/PycharmProject/myBlog/venv/lib/python3.6/site-packages/django/db/backends/mysql/base.py

就是在你项目文件夹下的/venv/lib/python3.6/site-packages/django/db/backends/mysql/中

进去进行修改:

找到这段代码:version = Database.version_info

修改下面的if语句:添加pass,再注释掉,就像这个样子:

if version < (1, 3, 13):
pass
'''
raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
'''

保存后,在进入同路径下的operations.py文件

query = query.decode(errors='replace')中的decode改为encode

保存

再次进行数据迁移,成功!可以成功连接到mysql。

 

转载于:https://www.cnblogs.com/Horace-blogs/p/11357232.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值