Django 1.8:抛出ImportError:找不到模块名为 'MySQLdb'
Django 1.8:抛出ImportError:找不到模块名为 'MySQLdb'
我正在尝试使用Python 3.4.3运行我的Django服务器,并且已经为此烦恼了一段时间。到目前为止,我尝试过的命令及其错误消息如下:
pip3.4 install MySQLdb(找不到与mysqldb匹配的分发) pip3.4 install mysql-python(ImportError:找不到名为'ConfigParser'的模块) pip3.4 install configparser pip install ConfigParser File "/tmp/pip-build-mcfc7tj3/ConfigParser/configparser.py",第397行 _KEYCRE = re.compile(ur"%\(([^)]+)\)s") ^ SyntaxError:无效的语法 pip3.4 install mysqlclient File "/tmp/pip-build-s41j0x_s/mysqlclient/setup_posix.py",第26行,mysql_config方法 raise EnvironmentError("%s not found" % (mysql_config.path,)) OSError:找不到mysql_config sudo yum install python3-dev libmysqlclient-dev 没有可用的python3-dev软件包。 没有可用的libmysqlclient-dev软件包。
但仍然无法安装。我该怎么办?
注:
运行python3.4 manage.py runserver时出现以下错误:
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e) django.core.exceptions.ImproperlyConfigured: 加载MySQLdb模块时出错:找不到名为'MySQLdb'的模块。
在Django 1.8版本中出现了一个问题,即抛出了ImportError: No module named 'MySQLdb'的错误。这个错误的原因是因为MySQLdb不支持Python 3.4版本,需要使用替代驱动。
解决这个问题的方法是安装一个替代驱动。具体的方法如下:
- 首先,我们需要安装python-dev
和mysql-dev
这两个包。这是apt软件包系统的包名,适用于Debian、Ubuntu及其克隆/变种。
- 在CentOS上,我们需要安装相应的rpm软件包。
- 其次,我们需要安装mysql-devel
来获取MySQL的开发头文件。同时,还需要安装开发工具链,最简单的方法是使用sudo yum groupinstall "Development Tools"
命令安装。
- 如果你使用yum安装了Python,那么你还需要安装python-devel
。
如果你按照以上步骤进行了操作,但仍然遇到相同的错误,可以参考stackoverflow.com上的一个回答。你可以通过编辑manage.py文件来解决该问题。
以上就是解决Django 1.8版本中出现ImportError: No module named 'MySQLdb'错误的方法。