Установка MySQL-python для Django

Я только что узнал, как использовать 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

Не совсем уверен, как решить эту проблему =/любая помощь очень ценится!

Ответ 1

Недавно у меня была именно эта проблема (только не по отношению к Django). В моем случае я разрабатываю 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

Ответ 2

Провел час, просматривая stackoverflow. В другом вопросе мы нашли ответ . Вот что меня спасло:

sudo apt-get install libmysqlclient-dev

mysql_config идет с пакетом.

Ответ 3

Выполнение в virtualenv:

pip install MySQL-python

Я получил

EnvironmentError: mysql_config not found

Чтобы установить mysql_config, как сказал Артем Федосов, сначала установите

sudo apt-get install libmysqlclient-dev

тогда все отлично работает в virtualenv

Ответ 4

Для драйвера MySQL для Python (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

Вот более подробная документация для MySQL в Django:

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

Ответ 5

Я должен был сделать это:

pip install mysql-python

внутри virtualenv

Ответ 6

Команды всегда запускаются в ubuntu:

easy_install -U distribute

позже

sudo apt-get install libmysqlclient-dev

и, наконец,

pip install MySQL-python

Ответ 7

Предлагаемые решения не сработали для меня, потому что у меня все еще появились ошибки компиляции после запуска

`$ sudo apt-get install libmysqlclient-dev`  

поэтому мне пришлось запустить

 apt-get install python-dev

Тогда все сработало для меня с

apt-get install python-dev

Ответ 8

я новичок в Python и Django, пытаясь запустить эту pip install MySQL-python CMD pip install MySQL-python я получаю эту Command "f:\agri\env\scripts\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\pc\\AppData\\Local\\Temp\\pi p-install-_wnga88m\\MySQL-python\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n'); f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\pc\AppData\Local\Temp\pip-record-mr_0w42z\install -record.txt --single-version-externally-managed --compile --install-headers f:\agri\env\include\site\python3.7\MySQL-python" failed with error code 1 in C:\Users\pc\AppData\Local\Temp\pip-install-_wnga88m\MySQL-python\ Command "f:\agri\env\scripts\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\pc\\AppData\\Local\\Temp\\pi p-install-_wnga88m\\MySQL-python\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n'); f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\pc\AppData\Local\Temp\pip-record-mr_0w42z\install -record.txt --single-version-externally-managed --compile --install-headers f:\agri\env\include\site\python3.7\MySQL-python" failed with error code 1 in C:\Users\pc\AppData\Local\Temp\pip-install-_wnga88m\MySQL-python\