pip install mysql-python mislukt met EnvironmentError: mysql_config niet gevonden

Dit is de foutmelding die ik krijg

(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):
  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
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
  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):
  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
----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log

Wat kan ik doen om dit op te lossen?


Antwoord 1, Autoriteit 100%

Het lijkt erop dat MySQL_Config zich ontbreekt op uw systeem of het installatieprogramma kon het niet vinden.
Zorg ervoor dat MySQL_Config echt is geïnstalleerd.

Bijvoorbeeld op Debian / Ubuntu moet u het pakket installeren:

sudo apt-get install libmysqlclient-dev

Misschien is de MySQL_Config niet op je pad, het zal het geval zijn wanneer je zelf compileert
de MySQL Suite.

update: voor recente versies van Debian / Ubuntu (vanaf 2018) is het

sudo apt install default-libmysqlclient-dev

Antwoord 2, Autoriteit 21%

In Mac OS, ik liep dit gewoon in terminal om te bepalen:

export PATH=$PATH:/usr/local/mysql/bin

Dit is de snelste fix die ik heb gevonden – het voegt het toe aan het pad, maar ik denk dat je beter af bent toegevoegd om het permanent toe te voegen (dat wil zeggen voeg je toe aan /etc/paths) als je van plan bent Installeer MySQL-Python in een andere omgeving.

(Getest in OSX Mountain Lion)


Antwoord 3, Autoriteit 7%

apt-get install libmysqlclient-dev python-dev

leek de truc te doen.


Antwoord 4, Autoriteit 7%

Er zijn misschien verschillende antwoorden voor het bovenstaande probleem, hieronder is een geaggregeerde oplossing.

voor ubuntu:

$ sudo apt update
$ sudo apt install python-dev
$ sudo apt install python-MySQLdb

Voor CentOS:

$ yum install python-devel mysql-devel

Antwoord 5, Autoriteit 3%

Als u op Mac bent
Installeer dit wereldwijd

brew install mysql

Exporteer vervolgens pad als deze

export PATH=$PATH:/usr/local/mysql/bin

dan globaal of in uw Venv wat u maar wilt

pip install MySQL-Python

Opmerking: Wereldwijd voor Python3 zoals Mac beide Python2 & AMP kan hebben; 3

pip3 install MySQL-Python

Antwoord 6, autoriteit 3%

U kunt de MySQL-connector/Python gebruiken

Installatie via PyPip

pip install mysql-connector-python

Meer informatie is te vinden op de MySQL Connector/Python 1.0.5 bèta-aankondigingblog.

Op Launchpad staat een goed voorbeeld hoe u gegevens kunt toevoegen, bewerken of verwijderenmet de bibliotheek.


Antwoord 7, autoriteit 2%

Voor gebruikers van cento’s:

yum install -y mysql-devel python-devel python-setuptools

dan

pip install mysql-python


Als deze oplossing niet werkt, en print gcc compileerfout zoals:
_mysql.c:29:20: error: Python.h: No such file or directory

U moet het pad van Python.hopgeven, zoals dit:
pip install --global-option=build_ext --global-option="-I/usr/include/python2.6" MySQL-python


Antwoord 8

Ik probeerde mysql-pythonte installeren op een Amazon EC2 Linux-instantie en ik moest deze installeren:

yum install mysql mysql-devel mysql-common mysql-libs gcc

Maar toen kreeg ik deze foutmelding:

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

Dus ik installeerde :

yum install python-devel

En dat deed de truc.


Antwoord 9

Voor iedereen die MariaDB gebruikt in plaats van MySQL, is de oplossing om het pakket libmariadbclient-devte installeren en een symbolische link naar het configuratiebestand met de juiste naam te maken.

Dit werkte bijvoorbeeld voor mij:

ln -s /usr/bin/mariadb_config /usr/bin/mysql_config

Antwoord 10

Voor Linux

dit werkt voor mij

yum install python-devel mysql-devel

Antwoord 11

Probeer sudo apt-get build-dep python-mysqldb


Antwoord 12

OSX Mavericks

Als gevolg van veranderingen binnen osx mavericks & xcode-ontwikkeltools u krijgt mogelijk de foutmelding bij de installatie

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]

gebruik daarom :

sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install mysql-python

Antwoord 13

voor mariadb installeer libmariadbclient-devin plaats van libmysqlclient-dev

sudo apt-get install libmariadbclient-dev

Antwoord 14

U moet eerst de mysqlinstalleren:

yum install python-devel mysql-community-devel -y

Vervolgens kunt u mysqlclientinstalleren:

pip install  mysqlclient

Antwoord 15

Ik had hetzelfde probleem in de Terraform:light-container. Het is gebaseerd op Alpine.

Daar moet je mariadb-dev installeren met:

apk add mariadb-dev

Maar dat is niet genoeg omdat ook alle andere afhankelijkheden worden gemist:

apk add python2 py2-pip gcc python2-dev musl-dev

Antwoord 16

soms hangt de fout af van de werkelijke oorzaak. we hadden een geval waarin mysql-python werd geïnstalleerd via het debian-pakket python-mysqldb.

een ontwikkelaar die dit niet wist, voerde per ongeluk pip uninstall mysql-pythonuit en slaagde er vervolgens niet in om te herstellen waarbij pip install mysql-pythonde bovenstaande foutmelding gaf.

pip uninstall mysql-pythonhad de inhoud van het debian-pakket vernietigd, en natuurlijk faalde pip install mysql-pythonomdat het debian-pakket geen dev-bestanden nodig had.

de juiste oplossing in dat geval was apt-get install --reinstall python-mysqldbdie mysql-python in zijn oorspronkelijke staat herstelde.


Antwoord 17

Volgvolgorde.

pip install mysqlclient
sudo apt-get install python3-dev libmysqlclient-dev
pip install configparser 
sudo cp /usr/lib/python3.6/configparser.py /usr/lib/python3.6/ConfigParser.py 

Probeer vervolgens de MYSQL-python opnieuw te installeren. Dat werkte voor mij


Antwoord 18

Had een soortgelijk probleem bij het installeren op OS X Server 10.6.8. Dit is wat ik moest doen.
Gebruik:

MySQL-python 1.2.4b4 (bron)
MySQL-5.6.19 (binair installatieprogramma)
Python 2.7 (binair installatieprogramma)
OPMERKING: Installeren in virtualenv…

Pak de bron uit, open ‘distribute_setup.py’ en bewerk DEFAULT_VERSION om de nieuwste versie van de distributietools te gebruiken, zoals:

DEFAULT_VERSION = "0.6.49"

Opslaan. Open het bestand ‘site.cfg’ en verwijder het commentaar van het pad naar mysql_config zodat het er ongeveer zo uitziet (verwijs naar uw eigen pad naar mysql_config):

# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
mysql_config = /usr/local/mysql/bin/mysql_config

Nu zal opschonen, bouwen en maken niet mislukken met de fout ‘mysql_config’ niet gevonden.
Ik hoop dat dit iemand anders helpt die zijn oude xserves probeert te gebruiken 🙂


Antwoord 19

Je sudo-pad kent je lokale pad niet… ga naar de superuser-modus, voeg het pad toe en installeer het vanaf daar.

sudo su
export PATH=$PATH:/usr/local/mysql/bin/
pip install mysql-python
exit

En je bent aan de slag op OSX. Nu heb je een bijgewerkte wereldwijde python.


Antwoord 20

Als je MySQL-python in je virtuele omgeving installeert, moet je de pip-versie controleren, als de versie ouder is dan 9.0.1, update deze dan

pip install --upgrade pip

Antwoord 21

op MacOS Mojave is mysql_config te vinden in /usr/local/bin/ in plaats van /usr/local/mysql/bin zoals hierboven aangegeven, dus het is niet nodig om iets aan het pad toe te voegen.


Antwoord 22

In mijn geval draait mijn database op een container en draait mijn flask-app op een andere container toen ik probeerde de code-app bij te werken, ging kapot met een fout

  Complete output from command python setup.py egg_info:
/bin/sh: 1: mysql_config: not found
/bin/sh: 1: mariadb_config: not found
/bin/sh: 1: mysql_config: not found
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-build-bya8e734/mysqlclient/setup.py", line 15, in <module>
    metadata, options = get_config()
  File "/tmp/pip-build-bya8e734/mysqlclient/setup_posix.py", line 65, in get_config
    libs = mysql_config("libs")
  File "/tmp/pip-build-bya8e734/mysqlclient/setup_posix.py", line 31, in mysql_config
    raise OSError("{} not found".format(_mysql_config_path))
OSError: mysql_config not found

Sleutel in stacktracering is

/bin/sh: 1: mysql_config: not found

omdat waar mijn flask-app draait, de mysql-client niet correct is geconfigureerd, dus eerst heb ik mysql-server geïnstalleerd en vervolgens geïnstalleerd

sudo apt-get install mysql-server-5.7 -y

Toen begon MySQL

mansoor@LARC-mansur:~/Documents/clients/HR/DevopsSimulator/web$ sudo systemctl start mysql

Installeer vervolgens het flask-mysql-pakket en deze keer werkte het

mansoor@LARC-mansur:~/Documents/clients/HR/DevopsSimulator/web$ sudo pip3 install flask-mysqldb

Dit is een ander geval, maar post hier omdat het misschien iemand anders in de wereld is die met hetzelfde probleem te maken heeft


Antwoord 23

Op Mac:

brew install mysql-client

mysql zoeken

mdfind mysql | grep bin

toevoegen aan pad

export PATH=$PATH:/usr/local/Cellar/mysql-client/8.0.23/bin/

of permanent

echo "export PATH=$PATH:/usr/local/Cellar/mysql-client/8.0.23/bin/" >> ~/.zshrc
source ~/.zshrc

Other episodes