Никакой модуль под названием MySQLdb при попытке загрузить панель инструментов OpenStack

Я пытаюсь установить Панель инструментов OpenStack после этого руководства от мерзавца: http://wiki.openstack.org/OpenStackDashboard

Но когда я выполняю эту команду для синхронизации базы данных:

$ tools/with_venv.sh openstack-dashboard/manage.py syncdb

Это возвращает это:

File "/home/user1/horizon/.venv/local/lib/python2.7/sitepackages/django/db/backends/mysql>    /base.py", line 14, in <module>    
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

Я устанавливал пакет "python-mysqldb" несколько раз, но он все еще повысил эту ошибку. Когда я работаю:

>>> импортируют MySQLdb

в интерпретаторе Python это прекрасно!

И я пытался установить через easy_install, но Python MySQL установлен:

$ sudo easy_install MySQL-python

Поиск Python MySQL

Лучшее соответствие: Python MySQL 1.2.3 Python MySQL 1.2.3 уже является активной версией в легком-install.pth

Используя/usr/lib/pymodules/python2.7

Обработка зависимостей для Python MySQL

Законченные зависимости от обработки для Python MySQL

Вот содержание tools/with_venv.sh

#!/bin/bash
TOOLS=`dirname $0`
VENV=$TOOLS/../.venv
source $VENV/bin/activate && $@

Когда я работаю: tools/with_venv.sh это ничего не возвращает.

Что случилось в моем случае?

1
задан 3 May 2012 в 00:42

2 ответа

С помощью virtualenv у вас есть собственная среда специально для этого приложения. Если вы используете --no-site-packages, он не будет использовать системные модули, установленные за пределами стандартной библиотеки.

Решение состоит в том, чтобы активировать виртуальную среду и установить их там. Попробуйте что-то вроде этого:

cd (project directory)
source bin/activate
easy_install MySQL-python

При этом вы установите MySQLdb внутри собственной виртуальной среды этого проекта, и она будет отдельной от общесистемной установки. Преимущество virtualenv заключается в том, что он позволяет хранить несколько версий программного обеспечения именно там, где они вам нужны.

0
ответ дан 3 May 2012 в 00:42

Я тоже задавал этот вопрос в панели запуска. Слава Богу, они помогают мне решить эту проблему. https://answers.launchpad.net/horizon/+question/189051

Запустив эту команду для установки MySQL-python

$ tools/with_venv.sh pip install MySQL-python

@ Ken: Спасибо вы. Ты прав. Но я не понимаю, в чем разница между командами easy_install и pip ! Я проверю это позже.

0
ответ дан 3 May 2012 в 00:42

Другие вопросы по тегам:

Похожие вопросы: