Behebung des Fehlers „ModuleNotFoundError: Kein Modul namens MySQLdb gefunden“

MySQL ist eine der effizientesten Optionen für die Arbeit mit Python. Das Python-Modul „mysqldb“ ermöglicht die Verbindung Ihrer Python-Anwendung mit einer MySQL-Datenbank. Falls dieses Modul nicht auf Ihrem System installiert ist, erhalten Sie die Fehlermeldung „no module named 'mysqldb'“.

ModuleNotFoundError Kein Modul namens MySQLdb gefunden

In diesem Artikel werden die möglichen Ursachen und Lösungen zur Behebung des Fehlers „no module named mysqldb“ erläutert.

Warum tritt dieser Fehler auf?

Ein Python-Modul ist entweder von einem oder mehreren Paketen abhängig. Wenn eines der mit „mysqldb“ verknüpften Pakete nicht installiert ist und Sie versuchen, das Modul zu importieren, erhalten Sie die Fehlermeldung „no module named mysqldb“.

Der folgende Auszug zeigt, dass wir versuchen zu importieren, aber ein Fehler aufgetreten ist:

Fehler "ModuleNotFoundError"

Lösung: Installieren Sie „MySQLdb“.

Das MySQLdb-Modul ist über PIP, einen Python-basierten Paketmanager, verfügbar. Stellen Sie sicher, dass PIP auf Ihrem System installiert ist. Die vollständige Lösung wird in den folgenden Schritten dargestellt:

Schritt 1: PIP installieren

PIP kann unter Linux mit den folgenden Befehlen installiert werden:

$ sudo apt install python3-pip # für Debian- und Ubuntu-Distributionen $ sudo yum install python3-pip # für CentOS 7/RHEL $ sudo dnf install python3-pip # für Fedora/CentOS 8 $ sudo pacman -S python3-pip # für Arch-Distributionen

Installiere python3-pip

Sie müssen den Paketnamen „python-pip“ verwenden, um PIP unter Python2 zu installieren.

Schritt 2: Installieren Sie das Paket „mysqlclient“.

Das MySQLdb-Modul ist mit zwei Paketen verknüpft, die vor dem Import der verschiedenen PIP-Pakete installiert werden müssen. Das erste Paket ist mysqlclient, das Python die Verbindung zu MySQL ermöglicht.

Das Fehlen dieses Pakets ist der Hauptgrund, warum Sie das Modul nicht importieren können. Das Paket „mysqlclient“ kann unter Linux wie folgt installiert werden:

$ pip3 install mysqlclient

Befehl zum Installieren des MySQL-Pakets

Bei der Installation von „mysqlclient“ kann ein Fehler auftreten. Dies liegt daran, dass Sie nicht über die entsprechende Software verfügen.

Das Python-Entwicklungskit zum Einbinden des Pakets „mysqlclient“ in Ihr System. Dieses Paketset kann mit folgendem Befehl installiert werden:

$ sudo apt install python3-dev default-libmysqlclient-dev build-essential $ sudo yum install python3-dev default-libmysqlclient-dev build-essential $ sudo dnf install python3-dev default-libmysqlclient-dev build-essential

Hinweis: „apt“, „yum“ und „dnf“ bezeichnen die auf Debian/Ubuntu, CentOS/RHEL bzw. Fedora basierenden Distributionen.

Ein Befehl zum Installieren der grundlegenden MySQL-Bausteine

Versuchen Sie nach der Installation von „mysqlclient“, das Modul zu importieren. Sollte der Fehler weiterhin bestehen, fahren Sie mit dem nächsten Schritt fort.

Schritt 3: Installieren Sie „mysql-connector-python“

Dieses Paket ermöglicht Python die Verbindung zu MySQL-Datenbanken. Zur Installation kann der folgende PIP-basierte Befehl verwendet werden:

$ sudo pip3 install mysql-connector-python

Befehl zum Verbinden von MySQL mit Python

Wenn Sie PIP für Python2 verwenden, ersetzen Sie den Paketmanagernamen „pip3“ durch „pip2“.

Schritt 4: Überprüfung der Lösung

Importieren Sie nun die Einheit mit ihrem vollständigen Namen:

>>> import MySQLdb

Importieren Sie MySQLdb

Der Screenshot zeigt, dass das Modul in die Python-Umgebung importiert wurde.

Der Fehler „Kein Modul namens mysqldb“ tritt auf, wenn ein Benutzer versucht, ein Modul ohne die erforderlichen Pakete zu importieren. Dieser Fehler lässt sich durch die Installation des Pakets „mysqlclient“ beheben. Sollte der Fehler weiterhin bestehen, installieren Sie das Paket „mysql-connector-python“ mithilfe von PIP. Dieser Beitrag beschreibt die Ursache und die Lösungen für den Fehler „MySQLdb“ unter Linux.

Kommentare sind geschlossen.