it-swarm.com.de

pip install mysql-python schlägt mit EnvironmentError fehl: mysql_config wurde nicht gefunden

Dies ist der Fehler, den ich bekomme

(mysite)[email protected]:~/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)[email protected]:~/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

Was kann ich tun, um das Problem zu lösen?

724
zjm1126

Es scheint, dass mysql_config auf Ihrem System fehlt oder das Installationsprogramm es nicht finden konnte. __ Stellen Sie sicher, dass mysql_config wirklich installiert ist.

Zum Beispiel müssen Sie unter Debian/Ubuntu das Paket installieren:

Sudo apt-get install libmysqlclient-dev

Möglicherweise befindet sich die mysql_config nicht in Ihrem Pfad. Dies ist der Fall, wenn Sie die mysql-Suite selbst kompilieren.

Update: Für neuere Versionen von debian/ubuntu (Stand 2018) ist es 

Sudo apt install default-libmysqlclient-dev
1225
Fbo

Unter Mac OSX Mountain Lion habe ich einfach folgendes in Terminal ausgeführt, um Folgendes zu beheben:

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

Dies ist das schnellste Update, das ich gefunden habe - es fügt es dem Pfad hinzu, aber ich denke, Sie sollten es dauerhaft hinzufügen (dh zu /etc/paths), wenn Sie MySQL-Python in einer anderen Umgebung installieren möchten.

269
Chris Villa
apt-get install libmysqlclient-dev python-dev

Schien den Trick zu tun.

95
steve-gregory

Für das obige Problem gibt es verschiedene Antworten. Im Folgenden finden Sie eine Gesamtlösung.

Für Ubuntu:

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

Für CentOS:

$ yum install python-devel mysql-devel
77
user2886440

Sie können den MySQL Connector/Python verwenden

Installation über PyPip

pip install mysql-connector-python

Weitere Informationen finden Sie im Blog MySQL Connector/Python 1.0.5 Beta-Ankündigung .

Auf Launchpad gibt es ein gutes Beispiel für das Hinzufügen, Bearbeiten oder Entfernen von Daten mit der Bibliothek.

23
ndequeker

Wenn Sie mit MAC arbeiten, installieren Sie dies global 

brew install mysql

dann exportieren Sie den Pfad wie folgt

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

letztlich global oder in Ihrem Unternehmen 

pip install MySQL-Python
22
Zaman Afzal

Für Centos Benutzer: 

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

dann

pip install MySQL-python


Wenn diese Lösung nicht funktioniert , und gcc-Kompilierungsfehler wie:
_mysql.c:29:20: error: Python.h: No such file or directory

Sie müssen den Pfad von Python.h wie folgt angeben:
pip install --global-option=build_ext --global-option="-I/usr/include/python2.6" MySQL-python

22
lancerex

Ich habe versucht, mysql-python auf einer Amazon EC2 Linux-Instanz zu installieren, und ich musste diese installieren:

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

Dann bekam ich diesen Fehler:

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

Also habe ich installiert:

yum install python-devel

Und das hat den Trick gemacht.

16
Emil Davtyan

Für jeden, der MariaDB anstelle von MySQL verwendet, besteht die Lösung darin, das Paket libmariadbclient-dev zu installieren und einen symbolischen Link zur Konfigurationsdatei mit dem richtigen Namen zu erstellen.

Zum Beispiel hat das für mich funktioniert:

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

OSX Mavericks

Aufgrund von Änderungen bei den osx mavericks & xcode-Entwicklungstools erhalten Sie möglicherweise einen Fehler bei der Installation 

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

verwenden Sie deshalb:

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

Sudo apt-get build-dep python-mysqldb ausprobieren

4
KalamHavij

für mariadb install lib mariadb client-dev statt libmysqlclient-dev

Sudo apt-get install libmariadbclient-dev
2
Dinesh Sharma

Sie sollten zuerst die mysql installieren:

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

Dann können Sie mysqlclient installieren:

pip install  mysqlclient
2
aircraft

manchmal hängt der Fehler von der tatsächlichen Ursache ab. Wir hatten einen Fall, in dem mysql-python über das Debian-Paket python-mysqldb installiert wurde. 

ein Entwickler, der dies nicht wusste, lief versehentlich pip uninstall mysql-python und konnte sich nicht mit pip install mysql-python wiederherstellen, was den obigen Fehler ergab.

pip uninstall mysql-python hatte den Inhalt des debian-Pakets zerstört, und natürlich schlug pip install mysql-python fehl, weil das debian-Paket keine dev-Dateien benötigte.

die richtige Lösung war in diesem Fall apt-get install --reinstall python-mysqldb, wodurch mysql-python wieder in den ursprünglichen Zustand versetzt wurde.

1
eMBee

Ihr Sudo-Pfad kennt Ihren lokalen Pfad nicht ... Gehen Sie in den Superuser-Modus, fügen Sie den Pfad hinzu und installieren Sie ihn von dort aus.

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

Und Sie sind unter OSX einsatzbereit. Jetzt haben Sie einen aktualisierten globalen Python.

0
Paul Kenjora

Folge zu befolgen.

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 

Versuchen Sie dann erneut, den MYSQL-Python zu installieren. Das hat für mich funktioniert

0
lakshman

Für Linux

das funktioniert bei mir

yum install python-devel mysql-devel
0
penny chan

Hatte ein ähnliches Problem bei der Installation unter OS X Server 10.6.8. Folgendes musste ich tun ...

MySQL-python 1.2.4b4 (Quelle) MySQL-5.6.19 (binäres Installationsprogramm) Python 2.7 (binäres Installationsprogramm) HINWEIS: Die Installation in v ...

Entpacken Sie die Quelle, öffnen Sie 'distribute_setup.py' und bearbeiten Sie DEFAULT_VERSION, um die neueste Version der Verteilungstools zu verwenden.

DEFAULT_VERSION = "0.6.49"

Sparen. Öffnen Sie die Datei 'site.cfg', und kommentieren Sie den Pfad zu mysql_config aus, sodass es ungefähr so ​​aussieht (verweisen Sie auf Ihren eigenen Pfad zu 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

Jetzt können clean, build und make nicht mit dem Fehler "mysql_config" nicht gefunden werden . Ich hoffe, dies hilft jemandem, der versucht, seine alten Xserves zu nutzen :-)

0
Brad Herdson

wenn Sie MySQL-Python in Ihrer virtuellen Umgebung installieren, sollten Sie die Pip-Version überprüfen. Wenn die Version älter als 9.0.1 ist, aktualisieren Sie sie bitte

pip install --upgrade pip
0
Albert Chen

Ich hatte das gleiche Problem in der Terraform: Leichtcontainer. Es basiert auf Alpine.

Dort muss mariadb-dev installiert werden mit:

apk add mariadb-dev

Aber das ist nicht genug, weil auch alle anderen Abhängigkeiten übersehen werden:

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