Genehmigt: Fortect
Manchmal kann Ihr tatsächlicher Computer beim Laden des mysqldb-django-Moduls einen Fehler generieren, der auf einen falschen Konfigurationsfehler hinweist. Dieser Fehler kann verschiedene Gründe haben.
Das Problem, mit dem ich konfrontiert bin, wenn ich versuche, eine Verbindung zu einer MySQL-Datenbank herzustellen. Ich habe auch normalerweise die Parameter der verwendeten Datenbank angegeben.
Traceback Letzte (die meisten Anrufe dauern): Datei "Manage.py", zehn, Zeile in execute_from_command_line (sys.argv) Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", Bestellung 453, in execute_from_command_lineDie Utility.execute()Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages per django / core / management / __ init__.py "connection 392, in progressself.fetch_command (Unterbefehl) .run_from_argv (self.argv)Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", Zeilen 272, fetch_commandKlasse als Ganzes = load_command_class (app_name, Unterbefehl)Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py" Zeile siebenundsiebzig, in load_command_classmodule entspricht import_module ('% s.management.commands.% s'% (app_name, name))Datei "/home/arundhati/Desktop/test/testprac/local/lib/python2.7/site-packages/django/utils/importlib.Line py", 37, in import_module__importieren __ (Name)Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", 11, Zeile bezüglich importiere custom_sql_for_model, issue_post_sync_signal von django.core.management.sqlDatei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/sql.Line py", 8, in django.db BedeutungsmodelleDatei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/__init__.py", Zeile 40, Folgendes entspricht load_backend (connection.settings_dict ['ENGINE'])Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/__init__.py", Zeile 24, in __getattr__getattr zurückgeben (Verbindungen [DEFAULT_DB_ALIAS], "/home – ar/Desktop/test/testprac – local/lib/python2 item)File.7 versus site-packages / django / db / utils.py ", Angelschnur 93 bedeutet __getitem__backend load_backend (db ['ENGINE'])Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/utils.py", Kurs 27, in import_module('load_backendreturn.base ', backend_name)Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/utils/importlib.Line py", 5, in import_module__importieren __ (Name)Datei "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", Bestellung 17, nach Raise UnproperlyConfigured ("Fehler beim Laden des MySQLdb-Moduls:% s"% e)django.core.Exceptions.ImproperlyConfigured: Fehler beim Laden des MySQLdb-Moduls: Kein Modul benannt bedeutet mysqldb
Datenbanken 'Ursprünglich': 'ENGINE': 'django.db.backends.mysql', Zahl Fügen Sie 'postgresql_psycopg2', 'mysql' oder 'sqlite3' 'oracle' hinzu. 'NAME': 'ar_test_db', Zahl Oder Pfad zum Hauptkundendatensatz, falls verwendet number Die folgenden Parameter werden von sqlite3 nicht verwendet: 'BENUTZER': '', 'PASSWORT': '', 'HOST': '', # Leer für localhost auf Domain-Steckdosen, '127.0.0.1' für localhost auf TCP. 'PORT': '', # Definiert als leerer String, der einem Standard entspricht.
Nicht die Antwort, die Sie suchen? Durchsuchen Sie andere Fragen mit dem Tag Python Mysql Django Phpmyadmin oder stellen Sie Ihre eigene Frage.
Genehmigt: Fortect
Fortect ist das weltweit beliebteste und effektivste PC-Reparaturtool. Millionen von Menschen vertrauen darauf, dass ihre Systeme schnell, reibungslos und fehlerfrei laufen. Mit seiner einfachen Benutzeroberfläche und leistungsstarken Scan-Engine findet und behebt Fortect schnell eine breite Palette von Windows-Problemen - von Systeminstabilität und Sicherheitsproblemen bis hin zu Speicherverwaltung und Leistungsengpässen.
Entscheide dich für pip pymysql
Bearbeiten Sie dann die Datei __init__.py in Ihrem Produkt-Home-Verzeichnis (z.B. settings.py)
pymysql importierenpymysql.install_as_MySQLdb ()
zufrieden am 18. April um 7:10
2.319
Nach der Migration zu Python 3 tritt häufig das gleiche Problem auf. Offensichtlich ist MySQL Python nicht kompatibel. Wie in den offiziellen Django-Dokumenten angegeben, wird mysqlclient zusammen mit pip install mysqlclient
auf dem Mac installiert. Bitte beachten Sie, dass die meisten Betriebssysteme spezifische Konflikte haben, die in den Dokumenten erwähnt werden.
Anforderungen
Sie können darum bitten, die gemeinsamen Python- und MySQL-Erfolgsheader und Ihre lokale Bibliothek festzulegen, also:
Mögen
sudo apt-get in point python-dev default-libmysqlclient-dev
# Debian / Ubuntu
sudo yum kaufen python-devel mysql-devel
# Red Hat / CentOS
Produzieren Sie die Installation von mysql-connector-c
macOS (Homebrew)-Nummer (derzeit Möglichkeiten, einen Fehler zu erhalten. Siehe unten)
Windows hat jetzt Binärräder, die ohne MySQLConnector / C oder MSVC installiert würden.
Hinweis zu Python 3: Wenn Sie Python3 verwenden, müssen Sie Python3-dev mit dem folgenden Befehl versorgen:
sudo apt-get install python3-dev
debian / Ubuntu-Nummer
sudo yummy install python3-devel
Nummer Red Hat / CentOS
Hinweis zum MySQL Connector / C-Fehler unter macOS
Siehe außerdem: https://bugs.mysql.com/bug.php?id=86971
Versionen, die mit MySQL Connector / C identisch sind, können eine falsche freie Konfiguration aufweisen, die jedes Mal, wenn mysqlclient-python
installiert wird, Kompilierungsfehler verursacht. (Ab November 2017 gilt dies für Homebrews mysql-connector-c
sowie , das offizielle Paket)
Das Ändern von mysql_config
behebt diese Konstruktionen wie folgt.
Bearbeiten
# von macOS auf Zeile 112 dagegen höher:# Parameter erstellenlibs = "- L rr pkglibdir"libs = "$ libs -l"
bezüglich
# Parameter erstellenlibs = "- L $ pkglibdir"libs = "$ libs -lmysqlclient -lssl -lcrypto"
Das Ergebnis der SSL-Konstruktion kann ebenfalls Probleme verursachen; siehe zum Beispiel Bierinfo für openssl
auf macOS.
PyPI installieren
pip install mysqlclient
HINWEIS. Mai werden Windows-Räder immer noch nicht mit Originalverpackung versendet. Sie müssen Ihre Version festschreiben, um requirements.txt
zu unterstützen, um die Installation des neuesten Basispakets zu vermeiden.
Von der Gegenwart installieren
- Laden Sie den Generator mit
git clone
oder Zipfile herunter. - Anpassung
site.cfg
-
python setup.py installieren
zufrieden am 30. Juli ’18 um 18:49
5.766
Beschleunigen Sie jetzt die Leistung Ihres Computers mit diesem einfachen Download.