背景
2.2是django最新一個穩定的LTS版本,但是大部分人在升級過程中都遇到了兼容性問題,也就是下面這個異常:
ImproperlyConfigured: mysqlclient 1.3.13 or newer is required
這個問題糾結我了好長時間,網上的解決辦法都是復制粘貼:改源碼;心中一萬中草泥馬。我們要相信,身為Python界元老級的框架不可能犯這種錯誤,而且最新的補丁包已經是2.2.10
。
修復
1、添加新版組件
pip install mysqlclient
如果你項目根目錄下有這個文件,直接打開添加mysqlclient
即可:requirements.txt
;
2、移除舊版組件引用
pip uninstall pymysql
如果你項目根目錄下有這個文件,直接打開刪除pymysql
即可:requirements.txt
;
打開根目錄下的manage.py
文件,找到下面兩行代碼:
import pymysql
pymysql.install_as_MySQLdb()
刪除掉
3、CentOS 7.x
如果部署失敗,提示找不到mysqlDB,執行以下命令:
yum install python36-devel -y yum install mysql-devel -y yum install gcc -y