ModuleNotFoundError: No module named MySQLdb hatasının düzeltilmesi

MySQL, Python ile çalışmak için en verimli seçeneklerden biridir. "mysqldb" adlı Python modülü, Python uygulamanızı bir MySQL veritabanına bağlamanıza olanak tanır. Bu modül sisteminizde kurulu değilse, "no module named 'mysqldb'" hatasıyla karşılaşırsınız.

ModuleNotFoundError MySQLdb adlı modül bulunamadı.

Bu makalede, "no module named mysqldb" hatasının olası nedenleri ve çözüm yolları ele alınacaktır.

Bu hata neden oluşuyor?

Bir Python modülü, tek bir pakete veya birden fazla pakete bağımlıdır. "mysqldb" ile ilişkili paketlerden biri kurulu değilse ve modülü içe aktarmaya çalışırsanız, "mysqldb adlı modül bulunamadı" hatası alırsınız.

Aşağıdaki alıntı, içe aktarma işlemi sırasında bir hata oluştuğunu göstermektedir:

"ModuleNotFoundError" hatası

Çözüm: “MySQLdb”yi yükleyin.

MySQLdb modülü, Python tabanlı bir paket yöneticisi olan PIP aracılığıyla kullanılabilir. Sisteminizde PIP'in kurulu olduğundan emin olun. Tam çözüm aşağıdaki adımlarda gösterilmiştir:

Adım 1: PIP'i yükleyin

PIP, Linux'a aşağıdaki komutlar kullanılarak kurulabilir:

$ sudo apt install python3-pip # Debian ve Ubuntu dağıtımları için $ sudo yum install python3-pip # CentOS7/RHEL için $ sudo dnf install python3-pip # Fedora/CentOS8 için $ sudo pacman -S python3-pip # Arch dağıtımları için

python3-pip'i yükleyin

Python2'ye PIP'i kurmak için "python-pip" paket adını kullanmanız gerekir.

Adım 2: “mysqlclient” paketini yükleyin.

MySQLdb modülü, çeşitli PIP paketlerini içe aktarmadan önce yüklenmesi gereken iki paketle ilişkilidir. İlk paket, Python'ın MySQL'e bağlanmasını sağlayan mysqlclient'tır.

Bu paketin eksikliği, modülü içe aktaramamanızın temel nedenidir. "mysqlclient" paketi Linux'a şu şekilde kurulabilir:

$ pip3 install mysqlclient

MySQL paketini yüklemek için komut

“mysqlclient” kurulumu sırasında bir hata alabilirsiniz. Bunun nedeni, gerekli dosyaya sahip olmamanızdır.

"mysqlclient" paketini sisteminize dahil etmek için kullanılan Python geliştirme kiti. Bu paket seti şu komut kullanılarak kurulabilir:

$ 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

Not: “apt”, “yum” ve “dnf” sırasıyla Debian/Ubuntu, CentOS/RHEL ve Fedora tabanlı dağıtımları ifade eder.

MySQL kurulumunun temel bileşenlerini yüklemek için bir komut.

“mysqlclient” kurulumunu tamamladıktan sonra modülü içe aktarmayı deneyin. Hata devam ederse, bir sonraki adıma geçin.

Adım 3: “mysql-connector-python” paketini yükleyin.

Bu paket, Python'ın MySQL veritabanlarına bağlanmasına olanak tanır. Aşağıdaki PIP tabanlı komut kullanılarak kurulabilir:

$ sudo pip3 install mysql-connector-python

MySQL'i Python'a bağlamak için komut

Python2 için PIP kullanıyorsanız, paket yöneticisi adı olan “pip3”ü “pip2” ile değiştirin.

Adım 4: Çözümü kontrol etme

Şimdi, birimi tam adıyla içe aktarın:

>>> MySQLdb'yi içe aktar

MySQLdb'yi içe aktar

Ekran görüntüsü, modülün Python ortamına aktarıldığını gösteriyor.

"MySQLdb" modülü bulunamadı hatası, kullanıcının gerekli paketler olmadan bir modülü içe aktarmaya çalışması durumunda ortaya çıkar. Bu hata, sisteme "mysqlclient" paketini kurarak düzeltilebilir. Ancak, hata devam ederse, PIP kullanarak "mysql-connector-python" paketini kurun. Bu yazıda, Linux'ta "MySQLdb" modülü hatasının nedeni ve çözüm yolları açıklanmaktadır.

Yoruma kapalı.