Frage Mac OS X - EnvironmentError: mysql_config nicht gefunden


Zuerst einmal, ja, ich habe das schon gesehen:

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

Das Problem

Ich versuche, Django in einem Google App Engine-Projekt zu verwenden. Ich konnte jedoch nicht starten, da der Server aufgrund folgender Probleme nicht ordnungsgemäß gestartet werden kann:

ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

Ich habe einige Nachforschungen angestellt und alles darauf hingewiesen, Mysql-Python installieren zu müssen, da es anscheinend nicht auf meinem System ist. Ich habe es tatsächlich versucht, es zu deinstallieren und habe folgendes bekommen:

Cannot uninstall requirement mysql-python, not installed

Immer wenn ich versuche, über:

sudo pip install MySQL-python

Ich bekomme eine Fehlermeldung mit folgenden Angaben:

raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

Ich habe schon versucht zu laufen:

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

aber das schien nicht zu helfen, da ich den Installationsbefehl erneut ausgeführt habe und es trotzdem fehlgeschlagen ist.

Irgendwelche Ideen?

Bitte beachten Sie, ich bin nicht auf einem vertualenv.


75
2017-08-23 07:08


Ursprung


Antworten:


Ok, nun, zuerst einmal, lass mich nachsehen, ob ich auf derselben Seite wie du bin:

  • Sie haben Python installiert
  • Du machtest brew install mysql
  • Du machtest export PATH=$PATH:/usr/local/mysql/bin
  • Und schließlich hast du es getan pip install MySQL-Python

Wenn Sie alle diese Schritte in der gleichen Reihenfolge durchgeführt haben, und Sie immer noch einen Fehler haben, lesen Sie bis zum Ende, wenn Sie jedoch nicht genau diese Schritte folgen, versuchen Sie, ihnen von Anfang an zu folgen.

Also, Sie sind den Schritten gefolgt, und Sie bekommen immer noch einen Fehler, nun, es gibt ein paar Dinge, die Sie versuchen könnten:

  1. Versuche zu laufen which mysql_config von bash. Es wird wahrscheinlich nicht gefunden werden. Deshalb findet der Build es auch nicht. Versuche zu laufen locate mysql_config und sehen, ob etwas zurückkommt. Der Pfad zu dieser Binärdatei muss entweder in der $ PATH-Umgebungsvariablen Ihrer Shell angegeben werden, oder sie muss explizit in der Datei setup.py für das Modul enthalten sein, vorausgesetzt, sie sucht an einer bestimmten Stelle für diese Datei.

  2. Anstatt MySQL-Python zu verwenden, versuchen Sie es mit 'mysql-connector-python', es kann mit installiert werden pip install mysql-connector-python. Weitere Informationen hierzu finden Sie Hier und Hier.

  3. Suchen Sie manuell nach dem Speicherort von 'mysql / bin', 'mysql_config' und 'MySQL-Python' und fügen Sie diese zur Umgebungsvariablen $ PATH hinzu.

  4. Wenn alle obigen Schritte fehlschlagen, können Sie versuchen, 'mysql' mit MacPorts zu installieren. In diesem Fall würde die Datei 'mysql_config' tatsächlich 'mysql_config5' heißen und in diesem Fall müssten Sie dies nach der Installation tun: export PATH=$PATH:/opt/local/lib/mysql5/bin. Sie können mehr Details finden Hier.

Anmerkung1: Ich habe einige Leute gesehen, die diese Installation gesagt haben python-dev und libmysqlclient-dev half auch, aber ich weiß nicht, ob diese Pakete unter Mac OS verfügbar sind.

Hinweis2: Stellen Sie außerdem sicher, dass Sie versuchen, die Befehle als root auszuführen.

Ich erhielt meine Antworten von (neben meinem Gehirn) diese Orte (vielleicht könntest du sie dir ansehen, um zu sehen, ob es helfen würde): 1, 2, 3, 4.

Ich hoffte, dass ich half und würde mich freuen zu wissen, ob irgendetwas davon funktionierte oder nicht. Viel Glück.


247
2017-08-25 17:19



Ich habe dieses Problem für immer geklärt - 3 Stunden 17 Minuten. Was mich besonders genervt hat, war, dass ich schon vorher SQL auf meinem System installiert hatte, aber pip / pip3 erkannte es nicht. Diese Threads oben und viele andere, die ich im Internet durchforstete, waren hilfreich beim Eliminieren des Problems, aber lösten die Dinge nicht wirklich.

ANTWORTEN

Pip sucht nach mysql-Binärdateien im Homebrew-Verzeichnis, das relativ zu Macintosh HD @

usr/local/Cellar/

Daher habe ich festgestellt, dass Sie einige Änderungen vornehmen müssen

Schritt 1: Laden Sie MySql herunter, falls noch nicht geschehen https://dev.mysql.com/downloads/

Schritt 2: Lokalisieren Sie es relativ zu Macintosh HD und CD

usr/local/mysql/bin

Schritt 3: Sobald dort Terminal öffnen und einen Texteditor der Wahl verwenden - ich bin selbst ein Neovim-Typ, also habe ich getippt (kommt nicht automatisch mit Mac ... eine andere Geschichte für einen anderen Tag)

nvim mysql_config

Schritt 4: Sie werden um ca. 112 sehen

# Create options 
libs="-L$pkglibdir"
libs="$libs -l "

Ändern

# Create options 
libs="-L$pkglibdir"
libs="$libs -lmysqlclient -lssl -lcrypto"

* Sie werden feststellen, dass diese Datei schreibgeschützt ist, wenn Sie vim oder neovim verwenden

:w !sudo tee %

Schritt 5: Wechseln Sie in das Stammverzeichnis und bearbeiten Sie die Datei .bash_profile

cd ~

Dann

nvim .bash_profile

und hinzufügen

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

in die Datei speichern

Schritt 6: relativ zu Macintosh HD Lokalisieren Sie Pfade und fügen Sie sie hinzu

cd private/etc/

dann

nvim paths

und hinzufügen

/usr/local/mysql/bin

* Sie werden wieder bemerken, dass diese Datei schreibgeschützt ist, also wenn Sie vim oder neovim verwenden

:w !sudo tee % 

dann

cd ~

Aktualisieren Sie dann das Terminal mit Ihren Änderungen, indem Sie es ausführen

source .bash_profile

Endlich

pip3 install mysqlclient

Und Viola. Denken Sie daran, es ist eine Stimmung.


2
2018-06-21 15:48



Auch das passiert, wenn ich mysqlclient installiere,

$ pip install mysqlclient

Wie Benutzer3429036 sagte,

$ brew install mysql

1
2017-08-08 14:36



Install brew oder apt-get ist auch nicht einfach für mich, also habe ich mysql heruntergeladen über: https://dev.mysql.com/downloads/connector/python/, installierte es. Also kann ich mysql_config in diesem Verzeichnis finden: / usr / local / mysql / bin

Der nächste Schritt ist:

  1. export PATH = $ PATH: / usr / local / mysql / bin
  2. pip install MySQL-python == 1.2.5

-1
2018-04-19 10:03



Fehler war:

$ pip install MySQL-python
sh: 1: mysql_config: not found

Die Installation von libmysqlclient-dev war die Lösung hier:

$ sudo apt-get install libmysqlclient-dev
$ uname -a
Linux debian 3.2.0-4-amd64 #1 SMP Debian 3.2.73-2+deb7u1 x86_64 GNU/Linux

-8
2018-05-17 14:04