13

我刚刚学会了如何使用virtualenv并安装了 Django 1.4.5。我假设virtualenv为我创建了一个全新的工作环境,因此在安装了 Django 1.4.5 后,我将所有以前的文件复制到了virtualenv环境中。

我试图运行服务器,但我收到一条错误消息"no module named MySQLdb"。我认为这意味着我忘记安装 MySQL-python。我试图通过安装它

    pip install MySQL-python

但我得到这个错误

    Downloading/unpacking MySQL-python
    Running setup.py egg_info for package MySQL-python
    The required version of distribute (>=0.6.28) is not available,
    and can't be installed while this script is running. Please
    install a more recent version first, using
    'easy_install -U distribute'.

    (Currently using distribute 0.6.24     (/home/bradford/Development/Django/django_1.4.5/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg))
    Complete output from command python setup.py egg_info:
    The required version of distribute (>=0.6.28) is not available,

    and can't be installed while this script is running. Please

    install a more recent version first, using

    'easy_install -U distribute'.



    (Currently using distribute 0.6.24  (/home/bradford/Development/Django/django_1.4.5/lib/python2.7/site-packages/distribute-0.6.24-py2.7.egg))

    ----------------------------------------
    Command python setup.py egg_info failed with error code 2 in /home/bradford/Development/Django/django_1.4.5/build/MySQL-python

不太确定如何解决这个问题=/非常感谢任何帮助!

4

8 回答 8

23

我最近正好遇到了这个问题(只是与 Django 无关)。就我而言,我正在使用默认的 pip 和分发版本在 Ubuntu 12.04 上进行开发,这对于MySQL-python.

因为您在一个隔离的 virtualenv 中工作,所以您可以安全地按照建议的说明进行操作,而不会影响您的 Python 安装。

这样你就可以...

workon your_virtualenv #activate your virtualenv, you do use virtualenvwrapper, right?
easy_install -U distribute #update distribute on your virtualenv
pip install MySQL-python #install your package

如果由于某种原因升级分发不是一个选项,您可以尝试安装MySQL-python如下的旧版本(您必须检查此版本与您的 Django 版本兼容):

pip install MySQL-python==x.y.z #where x.y.z is the version you want
于 2013-05-08T10:39:59.547 回答
14

花了一个小时浏览stackoverflow。最终在另一个问题中找到了答案。这就是拯救我的原因:

sudo apt-get install libmysqlclient-dev

mysql_config 随包一起提供。

于 2013-10-04T18:07:59.027 回答
8

在 virtualenv 中做时:

pip install MySQL-python

我有

EnvironmentError: mysql_config not found

如Artem Fedosov所说,要安装mysql_config,首先安装

sudo apt-get install libmysqlclient-dev

然后在 virtualenv 中一切正常

于 2014-09-21T11:12:46.497 回答
3

Python 的 MySQL 驱动程序 (mysql-python) 需要 libmysqlclient-dev。您可以通过以下方式获得它:

sudo apt-get update
sudo apt-get install libmysqlclient-dev

如果没有安装 python-dev,你可能也需要安装它:

sudo apt-get install python-dev

现在您可以安装 MySQL 驱动程序:

pip install mysql-python

这是 Django 中 MySQL 的更详细文档:

http://codex.themedelta.com/how-to-install-django-with-mysql-in-a-virtualenv-on-linux/

于 2015-06-19T15:36:52.717 回答
2

我不得不这样做:

pip install mysql-python

在虚拟环境中

于 2014-04-20T22:33:17.900 回答
2

这些命令始终在 ubuntu 中运行:

easy_install -U distribute

之后

sudo apt-get install libmysqlclient-dev

最后

pip install MySQL-python
于 2014-10-30T17:35:05.523 回答
2

建议的解决方案对我不起作用,因为运行后我仍然遇到编译错误

`$ sudo apt-get install libmysqlclient-dev`  

所以我不得不跑

 apt-get install python-dev

然后一切对我来说都很好

apt-get install python-dev
于 2015-03-26T14:51:43.017 回答
0

尝试这个:

版本 Python 2.7

MySQL-python包,您应该使用 MySQL_python‑1.2.5‑cp27‑none‑win32.whl 或 MySQL_python‑1.2.5‑cp27‑none‑win_amd64.whl,具体取决于您安装的是 32 位还是 64 位 Python .

pip install MySQL_python‑1.2.5‑cp27‑none‑win32.whl

如果您使用的是mysqlclient包,则使用 mysqlclient‑1.4.6‑cp27‑cp27m‑win32.whl 或 mysqlclient‑1.4.6‑cp27‑cp27m‑win_amd64.whl

pip install mysqlclient‑1.4.6‑cp27‑cp27m‑win32.whl

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient

于 2019-11-25T08:07:49.607 回答