Ошибка EnvironmentError: не найден mysql_config при установке mysql-python с помощью pip
Описание проблемы
Я пытаюсь установить пакет mysql-python
с помощью pip, но получаю следующую ошибку:
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
Downloading MySQL-python-1.2.3.tar.gz (70Kb): 70Kb downloaded
Running setup.py egg_info for package mysql-python
sh: mysql_config: not found
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>
metadata, options = get_config()
File "setup_posix.py", line 43, in get_config
libs = mysql_config("libs_r")
File "setup_posix.py", line 24, in mysql_config
raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found
Complete output from command python setup.py egg_info:
sh: mysql_config: not found
Traceback (most recent call last):
...
EnvironmentError: mysql_config not found
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
Как я могу решить эту проблему?
5 ответ(ов)
Похоже, что утилита mysql_config
отсутствует на вашей системе или установщик не смог её найти. Убедитесь, что mysql_config
действительно установлена.
Например, на Debian/Ubuntu вам нужно установить пакет:
sudo apt-get install libmysqlclient-dev
Возможно, mysql_config
не входит в ваш путь, это может произойти, если вы самостоятельно собирали MySQL.
Обновление: Для более свежих версий Debian/Ubuntu (с 2018 года) следует установить пакет:
sudo apt install default-libmysqlclient-dev
В Mac OS я просто выполнил следующую команду в терминале для исправления:
export PATH=$PATH:/usr/local/mysql/bin
Это самый быстрый способ, который я нашел — он добавляет путь, но я думаю, что лучше будет добавить его навсегда (то есть добавить в файл /etc/paths
), если вы планируете устанавливать MySQL-python в другой среде.
(тестировалось на OSX Mountain Lion)
Для вашей проблемы может быть несколько решений. Ниже представлено обобщенное решение.
Для Ubuntu выполните следующие команды:
$ sudo apt update
$ sudo apt install python-dev
$ sudo apt install python-MySQLdb
Для CentOS используйте:
$ yum install python-devel mysql-devel
Команда, которую вы использовали, apt-get install libmysqlclient-dev python-dev
, действительно оказалась эффективной. Она устанавливает необходимые библиотеки для работы с MySQL и разработки на Python, что может решить возникшие проблемы с зависимостями. Если у вас есть дополнительные вопросы или проблемы, не стесняйтесь спрашивать!
Если вы используете MAC, выполните следующие шаги:
Установите MySQL глобально, используя Homebrew:
brew install mysql
Затем добавьте путь к MySQL в переменную окружения PATH:
export PATH=$PATH:/usr/local/mysql/bin
Установите MySQL-Python, как глобально, так и в вашем виртуальном окружении, в зависимости от ваших предпочтений:
pip install MySQL-Python
Обратите внимание: если у вас на Mac установлены обе версии Python (2 и 3), используйте pip для Python 3:
pip3 install MySQL-Python
Это поможет вам избежать конфликтов между версиями Python.
Как удалить все пакеты, установленные через pip?
Установка пакета из ветки Git-репозитория с помощью pip
Как обновить pip изнутри виртуального окружения?
Узнать, какая версия пакета установлена с помощью pip
Как заставить pip переустановить текущую версию?