Django2.2連接mysql數據庫出現django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None問題


在使用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。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM