徹底解決django 2.2以上版本與mysql兼容性問題(不用改源碼)


背景

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

問題完美解決(歡迎留言)


免責聲明!

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



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