Я пытаюсь запустить скрипт 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?
python
linux
ssh
mysql-python
user904542
источник
источник
/usr/bin
неверна, этоusr/local/my...
ответ Ти.Ответы:
mySQLdb - это интерфейс Python для MySQL, но это не сам MySQL. И, очевидно, mySQLdb нужна команда «mysql_config», поэтому вам нужно сначала установить ее.
Можете ли вы подтвердить, что вы установили или не установили сам mysql, запустив «mysql» из оболочки? Это должно дать вам ответ, отличный от «mysql: команда не найдена».
Какой дистрибутив Linux вы используете? Mysql предварительно упакован для большинства дистрибутивов Linux. Например, для Debian / Ubuntu установить MySQL так же просто, как
mysql-config находится в другом пакете, который можно установить из (опять же, при условии, что debian / ubuntu):
если вы используете mariadb, падение замены для MySQL, а затем запустить
Ссылка: https://github.com/JudgeGirl/Judge-sender/issues/4#issuecomment-186542797
источник
sudo apt-get install mysql-server
иsudo apt-get install mysql-client
Я устанавливал
python-mysql
на Ubuntu 12.04, используяСначала у меня была такая же проблема:
Это сработало для меня
Тогда у меня была эта проблема:
Тогда я попробовал с
И тогда я был счастлив :)
источник
(Специфично для Mac OS X)
Я много чего перепробовал, но этот набор команд наконец-то сработал для меня.
mysql
brew unlink mysql
brew install mysql-connector-c
mkdir /usr/local/Cellar/lib/
brew reinstall openssl
( источник )Обновление: если это не сработает, @vinyll предлагает запустить
brew link mysql
до шага 8.источник
brew info mysql
чтобы получить фактический / правильный путь к установке mysql. Затем, чтобыPATH
сохранить изменения, сделайте этоexport PATH..
в вашем ~ / .bash_profile.brew link --overwrite mysql-connector-c
работами на моем Macbrew link mysql
до шага 8, чтобы запустить его.На Red Hat я должен был сделать
Тогда это сработало.
источник
yum install MySQL-python
MySQL-python
как пакет Python, или с помощью virtualenv, это может помочь:yum install mysql-devel; venv/bin/pip install MySQL-python
.sudo yum install mariadb-devel
первый, то вы можете установить mysqlclient поpip install mysqlclient
yum install mysql-devel
Centos 8Ниже работает для меня на Ubuntu 12.04 LTS:
Несмотря на то, что это сработало, я все же сделал следующее:
источник
Я получил ту же ошибку при попытке установить
mysql-python
.Вот как я это исправил.
Проблема заключалась в том, что установщик не смог найти mysql_config в пути по умолчанию. Теперь это может .. и это сработало ..
Надеюсь это поможет.
Спасибо.
источник
Я исправил эту проблему с помощью следующих шагов:
источник
default-libmysqlclient-dev
, так как обычныйlibmysqlclient-dev
пакет не имеет кандидата на установку.Команды (тоже mysql) mPATH могут отсутствовать.
export PATH=$PATH:/usr/local/mysql/bin/
источник
Шаг 1: - Установите Python3 и Python3-dev Both
Шаг 2: - Установите Python & Mysql Connector
Шаг 3: - Установите клиент Python MySQL
Это решит вашу проблему
источник
Если вы используете macOS и уже установили mysql@5.7 через brew install:
brew install mysql-connector-c
brew unlink mysql@5.7
brew link --overwrite --dry-run mysql@5.7
во-первых, чтобы увидеть, какие символические ссылки перезаписываютсяbrew link --overwrite --force mysql@5.7
фактически перезаписать связанные с mysql символические ссылки с помощью mysql@5.7pip install mysqlclient
источник
Я исправил это, установив libmysqlclient:
источник
MySQL-python
Пакет с помощьюmysql_config
команды , чтобы узнать оmysql
конфигурации на хосте. Ваш хост не имеетmysql_config
команды.Пакет библиотек разработки MySQL (MySQL-devel-xxx) от dev.mysql.com предоставляет эту команду и библиотеки, необходимые для пакета MySQL-python. В
MySQL-devel
пакетах находятся в загрузках - области сервера сообщества. Имена пакетов библиотеки разработки MySQL начинаются сMySQL-devel
и меняются в зависимости от версии MySQL и платформы linux (например,MySQL-devel-5.5.24-1.linux2.6.x86_64.rpm
.)Обратите внимание, что вам не нужно устанавливать сервер MySQL.
источник
Пакет libmysqlclient-dev устарел, поэтому используйте приведенную ниже команду, чтобы исправить это.
Пакет libmysqlclient-dev недоступен, но на него ссылается другой пакет. Это может означать, что пакет отсутствует, устарел или доступен только из другого источника
источник
В Centos 7 это работает для меня:
источник
На моей машине Fedora 23 мне нужно было выполнить следующее:
источник
Для Alpine Linux:
$ apk add mariadb-dev mariadb-client mariadb-libs
MariaDB является заменой MySQL и стала новым стандартом для Alpine 3.2. См. Https://bugs.alpinelinux.org/issues/4264.
источник
Я думаю, следующие строки могут быть выполнены на терминале
Этот каталог mysql_config предназначен для Zend-сервера в MacOSx. Вы можете сделать это для Linux, как следующие строки
Это стандартный каталог linux mysql.
источник
Я имел эту проблему и решил, если, добавив символическую ссылку на
mysql_config
.Я установил mysql с homebrew и увидел это в выводе.
В зависимости от того, как вы
mysql
его получили, будет в разных местах. В моем случае, как/usr/local/Cellar/mysql
только вы узнаете, где он находится, вы сможете создать символическую ссылку на то, где его ищет python.
/usr/local/mysql
Это сработало для меня.
источник
У меня такая же проблема. Я решил это, следуя этому руководству, чтобы установить Python с python3-dev на Ubuntu 16.04:
И теперь вы можете настроить свою виртуальную среду:
источник
Вам необходимо установить пакет python-dev:
источник
sudo apt-get установить python-mysqldb
Python 2.5? Похоже, вы используете очень старую версию Ubuntu Server (Hardy 8.04?) - пожалуйста, подтвердите, какую версию Linux использует сервер.
поиск python-mysql в базе данных пакетов ubuntu
Некоторая дополнительная информация:
Из README mysql-python -
Red Hat Linux .............
MySQL-python предварительно упакован в Red Hat Linux 7.x и новее. Это включает Fedora Core и Red Hat Enterprise Linux. Вы также можете создавать свои собственные пакеты RPM, как описано выше.
Debian GNU / Linux ................
Упаковано как
python-mysqldb
_ ::Или используйте Synaptic.
.. _
python-mysqldb
: http://packages.debian.org/python-mysqldbUbuntu ......
То же, что и в Debian.
Сноска. Если вы действительно используете дистрибутив сервера старше Ubuntu 10.04, значит, у вас нет официальной поддержки, и вы должны обновить его раньше, чем позже.
источник
Этот метод предназначен только для тех, кто знает, что Mysql установлен, но все еще не может найти mysql_config. Это происходит, если при установке python не удается найти mysql_config в системном пути, что в основном происходит, если вы выполнили установку с помощью .dmg Mac Package или установили по какому-либо пользовательскому пути. Самый простой и документированный способ MySqlDB - это изменить site.cfg . Найдите mysql_config, который, вероятно, находится в / usr / local / mysql / bin /, и измените переменную, а именно mysql_config, как показано ниже, и снова запустите установку. Не забудьте удалить комментарий, удалив "#"
Изменить ниже строки
в
в зависимости от пути в вашей системе.
Кстати, я использовал установку Python после изменения site.cfg
sudo /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python setup.py install
источник
Пока что все решения (Linux) требуют
sudo
или root-права для установки. Вот решение, если у вас нет рут прав и безsudo
. (нетsudo apt install ...
):dpkg -x libmysqlclient-dev_<version tag>.deb .
Это позволит извлечь папку с именемusr
.Ссылка
./usr/bin/mysql_config
на то, что находится на вашем$PATH
:ln -s
`pwd`
/usr/bin/mysql_config FOLDER_IN_YOUR_PATH
Теперь должно быть в состоянии найти
mysql_config
Проверено на Ubuntu 18.04.
источник
Для macOS Mojave требовалась дополнительная настройка, чтобы компиляторы могли найти openssl, вам может потребоваться установить:
источник
Я думаю, что наиболее удобный способ решить эту проблему в 2020 году - использовать другой пакет Python. Нам не нужно устанавливать другое двоичное программное обеспечение.
Попробуй это
pip install mysql-connector-python
а потом
источник
Я столкнулся с той же проблемой, просто добавил путь, где * mysql_config * находился в переменной окружения PATH, и он работал для меня.
источник
sudo apt-get build-dep python-mysqldb
установит все зависимости для сборки пакета из PIP / easy_installисточник
Как фактическая ошибка
и если вы не можете установить пакеты python-dev или python-devel, вы можете скачать архив с необходимой версией исходников python с http://hg.python.org/ и поместить файлы заголовков в соответствующую папку для включения
источник
Просто введите:
Это решит эту проблему.
источник
sudo apt-get install libmysqlclient-dev
В CentOS 7 необходимо сделать следующее:
источник