menu ZhengYiMing's Blog
search
你想要登出吗?
我不想,我不想
我的收藏夹

收藏夹中的房源会进行每日监控

大家好,我是zhengyiming

欢迎来到我的小窝

你发现这儿真是太好了

这儿还在继续建设build

near_me
开始使用
keyboard_arrow_down

解决centos8中Djabngo提示mysqlclient 1.3.13 or newer is required; you have 0.9.3

填坑 第一个坑 bookmark 后端开发 
作者:     总字数:1805     阅读时长:大约4min
date_range发布时间:2020年6月9日 22:54 update更新时间:2020年6月9日 23:03

博文封面:

centos8上启动django提示mysqlclient出现问题

情况复现

操作系统:centos8 Django版本:3.0.7 mysql版本:5.7

当把本地django项目放到服务器上时候(遇到这个问题也就是本博客放服务器上时), 出现的问题如下:

raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)  django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.

并且当使用pip install mysqlclient,安装失败。

解决方方法

1.centos下运行如下命令安装相关依赖

yum install python-devel -y
yum install mysql-devel -y
yum install gcc -y

安装完这些依赖以后再执行pip install mysqlclient就可以安装成功。

如果这个时候再次运行django启动命令还是提示如上的错误,这时候还需要在django项目的__init__.py,(与settings.py)增加如下:

import pymysql
pymysql.version_info=(1,3,13,"final",0)  # 这个是为了解决mysqlclient那个坑的
pymysql.install_as_MySQLdb()

之后在运行就不再有这个问题了,除了这种方法还有修改源码的方式,去掉对mysqlclient抛出错误的代码部分,这种方法更麻烦,于是就不用这种方法了。