Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法

yipeiwu_com5年前Python基础

发现问题

最近由于卸载Mysql时将很多相关依赖包都卸载了,重装mysql后启动django出现如下错误:

django.core.exceptions.ImproperlyConfigured:Error loading MySQLdb module: No module named 'MySQLdb".
Did you install mysqlclient or MySQL-python?

由于开发时python版本为3.6.4,MySQL-python不支持python3,经过一番折腾安装mysqlclient。

下面是我解决该问题的过程,本人比较懒,就以图片形式展示给大家吧。

解决方法

首先我尝试安装MySQL-python,但出现了错误,下面是网上搜索解决方法:


下面是我找到解决方法并安装mysqlclient的过程:

下面是安装mysqlclient及依赖环境的的代码:

pip install mysqlclient
sudo apt-get install python3-dev libmysqlclient-dev

总结:

遇到No module named 'MySQLdb".的问题,建议安装mysqlclient,MySQL-python已不支持python3。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

利用Python实现原创工具的Logo与Help

利用Python实现原创工具的Logo与Help

前言 当我们使用Python完成自己的原创的工具时,比如:端口扫描、弱口令爆破等。你是否想过添加自己的Logo,以及简要的帮助信息? 如下: Sqlmap的Logo Nmap的说...

Django Rest framework频率原理与限制

Django Rest framework频率原理与限制

前言 开发平台的API接口调用需要限制其频率,以节约服务器资源和避免恶意的频繁调用. DRF就为我们提供了一些频率限制的方法. DRF中的版本、认证、权限、频率组件的源码是一个流程,且...

Python中几个比较常见的名词解释

循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。 迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。 递归(rec...

Python字符串切片操作知识详解

一:取字符串中第几个字符 print "Hello"[0] 表示输出字符串中第一个字符 print "Hello"[-1] 表示输出字符串中最后一个字符 二:字符串分割 print...

python 划分数据集为训练集和测试集的方法

sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_split from sklearn.cross_...