2017-10-10 75 views
1

我使用python版本3.6.3和django版本2.0.1mysqlclient 1.3.3或更新版本是必需的;你有0.7.11。無

當我在cmd中輸入py manage.py migrate時,我得到了下面的結果。

(1.3.3的mysql或更新的要求,你必須0.7.11.None)

我試圖MySQL數據庫鏈接到我的Django項目。

init.py codes: 

import pymysql 
pymysql.install_as_MySQLdb() 

settings.py codes: 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': os.path.join(BASE_DIR, 'mysite'), 
     'USER': 'root', 
     'PASSWORD': '', 
     'HOST': 'localhost', 
     'PORT': '8000', 
    } 
} 
+2

嗯,你嘗試升級的mysql? –

回答

1

我可以從您的設置中看到您正在使用PyMySQL。請注意,Django並沒有正式支持PyMySQL。

如果您使用MySQL,Django建議mysqlclient。正如錯誤消息所述,Django 2.0需要mysqlclient 1.3.3或更高版本。

PyMySQL has a shim對於MySQLdb的兼容性,但在0.7.11中它僞裝成1.2.6,這對於Django 2.0來說太低了。

# we include a doctored version_info here for MySQLdb compatibility 
version_info = (1,2,6,"final",0) 

問題一直fixed on the master branch這樣你就不會在即將到來的0.8版本得到這個錯誤。

最後,請注意,Django並未正式支持PyMySQL,因此如果您使用它,可能會遇到問題。例如,BinaryField存在問題。

1

刪除代碼

#import pymysql 
#pymysql.install_as_MySQLdb() 

安裝Python包 「的mysql」

pip install mysqlclient 
相關問題