mysql_config не найден при установке Python-интерфейса mysqldb - PullRequest
398 голосов
/ 19 сентября 2011

Я пытаюсь запустить скрипт Python на сервере Linux, к которому я подключен через ssh.Скрипт использует mysqldb.У меня есть все остальные компоненты, которые мне нужны, но когда я пытаюсь установить mySQLdb через setuptools, например так :,

python setup.py install

, я получаю следующий отчет об ошибке, связанный с командой mysql_config.

sh: mysql_config: command not found
Traceback (most recent call last):
  File "setup.py", line 15, in <module>
    metadata, options = get_config()
  File "/usr/lib/python2.5/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
    libs = mysql_config("libs_r")
  File "/usr/lib/python2.5/MySQL-python-1.2.3/setup_posix.py", line 24, in mysql_config
    raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

Кто-нибудь еще сталкивался с этой ошибкой, и если да, то как вы ее решили / что я могу сделать, чтобы успешно установить mysqldb?

Ответы [ 27 ]

1 голос
/ 14 июня 2015

Просто введите:

$ sudo apt-get install python-dev
$ venv/bin/pip install MySQL-python

Это решит эту проблему.

1 голос
/ 14 декабря 2012

Я столкнулся с той же проблемой, просто добавил путь, где * mysql_config * находился в переменной окружения PATH, и это сработало для меня.

1 голос
/ 31 октября 2018

Пока что для всех решений (Linux) требуется sudo или права root для установки.Вот решение, если у вас нет рут прав и без sudo.(нет sudo apt install ...):

  1. Загрузите файл .deb libmysqlclient-dev, например, из этого зеркала
  2. Перейдите к загруженному файлу и запуститеdpkg -x libmysqlclient-dev_<version tag>.deb . Будет извлечена папка с именем usr.
  3. Симлинк ./usr/bin/mysql_config куда-то, что находится на вашем $PATH:

    ln -s `pwd` /usr/bin/mysql_config FOLDER_IN_YOUR_PATH

  4. Теперь он сможет найти mysql_config

Протестировано в Ubuntu 18.04.

1 голос
/ 18 декабря 2018

У меня была такая же проблема. Я решил это, следуя этому руководству , чтобы установить Python с python3-dev на Ubuntu 16.04:

sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get install -y python3-pip
sudo apt-get install build-essential libssl-dev libffi-dev python3-dev

А теперь вы можете настроить свою виртуальную среду:

sudo apt-get install -y python3-venv
pyvenv my_env
source my_env/bin/activate
1 голос
/ 19 июня 2013

Как фактическая ошибка

gcc ... -I/usr/include/python2.7 ...

_mysql.c:29:20: error: Python.h: No such file or directory

и если вы не можете установить пакеты python-dev или python-devel, вы можете скачать архив с необходимой версией исходных кодов python из http://hg.python.org/ и поместить файлы заголовков в соответствующую папку для включения

1 голос
/ 04 марта 2019

Для macOS Mojave требовалась дополнительная настройка, чтобы компиляторы могли найти openssl , вам может потребоваться установить:

export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"
0 голосов
/ 27 июля 2013

sudo apt-get установить libmysqlclient-dev sudo apt-get установить python-dev sudo apt-get установить MySQL-python

Обратите внимание, что вы также должны установить python-dev, такие пакеты, как MySQL-python:составлено из источника.Пакеты pythonx.x-dev содержат необходимые заголовочные файлы для связи с python. Почему для установки numpy требуется python-dev в Kubuntu 12.04

...