952 Stimmen

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

Ich erhalte folgende Fehlermeldung

(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

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

2 Stimmen

Siehe diesen Thread: [mysql_config not found when installing mysqldb python interface][1] hat bei mir funktioniert :) [1]: stackoverflow.com/questions/7475223/

2 Stimmen

Ich bin MAC OS-Benutzer und löse dieses Problem mit dieser Frage stackoverflow.com/questions/50940302/

1607voto

Fbo Punkte 16019

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.

Unter Debian/Ubuntu zum Beispiel müssen Sie das Paket installieren:

sudo apt-get install libmysqlclient-dev

Vielleicht ist die mysql_config nicht in Ihrem Pfad, das wird der Fall sein, wenn Sie selbst kompilieren die mysql-Suite.

Aktualisierung: Bei neueren Versionen von Debian/Ubuntu (ab 2018) ist es

sudo apt install default-libmysqlclient-dev

26 Stimmen

Das hat bei mir trotzdem einen Fehler verursacht. Ich benutzte apt-get install python-mysqldb stattdessen.

53 Stimmen

Meine 2c Erfahrung: sudo apt-get install libmysqlclient-dev hat für mich funktioniert, sudo apt-get install python-mysqldb hat nicht geholfen

25 Stimmen

@JonatanLittke Die Installation eines globalen Python-mysqldb Art von geht gegen den Sinn von virtualenv IMO.

324voto

Chris Villa Punkte 3781

Unter Mac OS habe ich dies einfach im Terminal ausgeführt, um das Problem zu beheben:

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

Dies ist die schnellste Lösung, die ich gefunden habe - es fügt es dem Pfad hinzu, aber ich denke, es ist besser, es dauerhaft hinzuzufügen (d.h. es zu /etc/paths ), wenn Sie MySQL-python in einer anderen Umgebung installieren wollen.

(getestet unter OSX Mountain Lion)

6 Stimmen

Wenn Sie Folgendes verwenden Der MAMP-Stapel von Bitnami verwenden. export PATH=$PATH:/Applications/mampstack-5.3.17-0/mysql/bin Wenn Sie Folgendes verwenden dieser kommerzielle MAMP-Stack Auf der anderen Seite, deinstallieren Sie es und erhalten Sie die Bitnami ein, weil es Scheiße ist und nicht die mysql-Header enthalten.

3 Stimmen

Um den Pfad dauerhaft zu machen, fügen Sie ihn am Ende von /etc/paths - müssen Sie ein neues Terminalfenster öffnen, um auf den neuen Pfad zuzugreifen.

0 Stimmen

@Timmmm Ziemlich teure Lösung, da alle meine Datenbanken auf der offiziellen Version sind :/ gibt es eine andere Möglichkeit, dies zu beheben?

110voto

user2886440 Punkte 1061

Für das obige Problem gibt es möglicherweise verschiedene Antworten, nachstehend finden Sie eine zusammengefasste Lö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

0 Stimmen

Danke für den centos-Tipp. Ich bin schon den ganzen Morgen hinter diesem Problem her.

2 Stimmen

Vielleicht sollte man hinzufügen python3-dev / python3-devel

106voto

steve-gregory Punkte 7206
apt-get install libmysqlclient-dev python-dev

Das schien zu funktionieren.

2 Stimmen

Ja, für mich war nur libmysqlclient-dev nicht genug, es fehlte auch python-dev.

0 Stimmen

Auf Ubuntu 12.04 (precise) (32-Bit) nach inplace upgrade von 10.04 (lucid) hat nur dies diese Fehler gelöst. Vor allem die zusätzliche "python-dev"!

0 Stimmen

Bei mir hat das auch funktioniert - python-dev war das letzte Teil des Puzzles. Ich hatte bereits python-mysqldb installiert, also ist das definitiv nicht alles, was benötigt wird.

49voto

Zaman Afzal Punkte 1811

Wenn Sie einen MAC haben Installieren Sie dies global

brew install mysql

dann exportieren Sie den Pfad wie folgt

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

Dann global oder in Ihrem Venv, was immer Sie wollen

pip install MySQL-Python

Hinweis: global für python3, da Mac sowohl python2 als auch 3 haben kann

pip3 install MySQL-Python

0 Stimmen

Wenn Sie immer noch eine Fehlermeldung über mysqlclient erhalten, gehen Sie wie folgt vor stackoverflow.com/questions/49025594/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X