MySQLdb adlı modül yok


400

Python sürüm 2.5.4 kullanıyorum ve MySQL sürüm 5.0 ve Django yüklüyorum. Django Python ile iyi çalışıyor ancak MySQL ile çalışmıyor. Windows Vista'da kullanıyorum.


43
pip install mysql-pythonveyapip install mysqlclient
Cœur

13
sudo apt-get install libmysqlclient-devÇalışması için yüklemem gerekiyordu.
b00r00x0

pip install mysqlclient windows x64 üzerinde çalıştı 10, You Rock Cœur
Itachi Sama

8
Python3.6 için sudo apt-get install libmysqlclient-devve pip3 install mysqlclientbenim için çalıştı
Umair

Yanıtlar:


638

Aşağıdaki komutlardan birini kullanmanız gerekir. Hangisi sahip olduğunuz ve kullandığınız işletim sistemine ve yazılıma bağlıdır.

  1. easy_install mysql-python (işletim sistemi mix)
  2. pip install mysql-python (mix os / python 2)
  3. pip install mysqlclient (mix os / python 3)
  4. apt-get install python-mysqldb (Linux Ubuntu, ...)
  5. cd / usr / bağlantı noktaları / veritabanları / py-MySQLdb && install install clean (FreeBSD)
  6. yum MySQL-python'u yükleyin (Linux Fedora, CentOS ...)

Windows için şu cevaba bakın: mysql-python'u yükleyin (Windows)


1
Bunu çalıştırmak için önce Mac OS üzerindeki python güncelleştirilmiş sürümüme uyacak şekilde setuptools sürümümü güncellemem gerekiyordu.
Jonathan Adelson

4
ve üzerinde python 3 ile virtualenv üzerine kuruluma ne dersin? Ben kullandım: pip install mysql-python sadece almak için: ImportError: ConfigParser adlı bir modül yok
Iliyan Bobev

9
Python 3'te ConfigParser, PEP 8 uyumluluğu için configparser olarak yeniden adlandırıldı.
Yüklediğiniz

2
Bu hatayı 1'de veya 2'de kullanırken OSX YosemiteEnvironmentError: mysql_config not found
Mona Jalal

1
FYI - Ben ubuntu 18 ve python3.7 kullanıyorum. "Pip install mysqlclient" yaptıktan sonra başarılı kurulum için "sudo apt-get install libmysqlclient-dev" yapmam gerekiyordu.
Rashmi Singh

143

... ve python3.x için MySQLdb olmadığını unutmayın

(Sorunun python2.x ile ilgili olduğunu biliyorum, ancak google bu yazıyı oldukça yüksek derecelendiriyor)


DÜZENLEME: Yorumlarda belirtildiği gibi, Python 3 desteği ekleyen bir MySQLdb çatalı var: github.com/PyMySQL/mysqlclient-python


Urghhgwaarrbl ... Django uygulamamda python3 kullanma umutlarım gider
Don Cheadle

6
Neyse ki, birçoğu aynı API'yi kullanan bir dizi alternatif var: Python 3 ve MySQL
Anthony Geoghegan

4
mysqlclient Python 3 ile iyi çalışan bir MySQLdb çatal.
ostrokach

@JanekOlszak Bunu bilmiyordum - sadece bir gün çok fazla küfür ve klavyede beceriyor - bunu okuyana ve 2.7'ye geçene kadar. Ve ne oldu, her şey hunky-dory çalışır ~
3kstc

Yolculuğum, bu -> bu -> bu . Ve sonunda başarıyla yükleyebildim.
daka

68

python versiyonun 3.5, yap pip install mysqlclient, başka şeyler benim için işe yaramadı


Bu cevabın neden aşağı oy verildiğini bilmiyorum, ancak mysqlclientMySQLdb projesinin bir çatalı ve bunun Windows 10'da çalıştığını onaylayabilirim
Hamman Samuel

1
Arch linux'da benim için çalıştı
Luke Dupin

Ubuntu 16.10, Python 3.5.2+ üzerinde çalıştı
tivadj

Ubuntu üzerinde çalıştı
14.04

MacOS, Python 3.6.0 üzerinde çalıştı
Miguel Mota

48

mysqldbPython için önceden kurulu olmayan veya Django ile birlikte gelen bir modüldür. mysqldb Buradan indirebilirsiniz .


1
MySQL-python-1.2.1 Ben mesajı almak yüklemeye çalışırken ImportError: Hayır modülü adlı Setuptools Setuptools'u yüklemeye çalışıyorum, benim hemen zlib mevcut değil o piton ile birlikte olması gerekiyordu değil mi?
Pierre de LESPINAY

modülü indirdikten sonra mysql_config ve çalışma için doğru yolu kullanarak site.cfg dosyasını düzenlemeniz gerekirpython setup.py install
ntanase


25

Bunun python 3.x için test edilmediğini unutmayın

CMD'de

pip install wheel
pip install pymysql

settings.py içinde

import pymysql
pymysql.install_as_MySQLdb()

Benimle çalıştı


3
"pip3 install mysqlclient" python3.6 /
showmyroutes

Bunu yeterince değerlendiremiyorum! Veritabanları üzerinde çalışan tek çözüm ..
Foxan Ng

13
pip install PyMySQL

ve sonra bu iki satırı Project / Project / init .py'nize ekleyin

import pymysql
pymysql.install_as_MySQLdb()

WIN ve python 3.3+ üzerinde çalışır


Önerinizi başarıyla kullandım. İmport komutunda sadece değişiklik vardı: import pymysql Türünde vardı.
Jorge

windows10, python 3.6, sanal çevre için benim için çalıştı
Yikang Luo

1
Bu hack seviyorum. Rağmen o olmadan çalışmak için başardı rağmen bir whql ikili dahil etmek zorunda kaldı.
İsmail

Doğru cevap olmalı.
Jossie Calderon

12

Bunu dene.

pip install MySQL-python

2
Bu özellikle sanal ortamlar için nasıl geçerlidir?
Tim

9

pencere için:

pip install mysqlclient pymysql

sonra:

ithalat pymysql pymysql.install_as_MySQLdb ()

python 3 Ubuntu için

sudo apt-get install -y python3-mysqldb

Sadece "pip install mysqlclient pymysql" Windows 10 (Python 3.6.2) üzerinde çalıştırmak sorunumu çözdü.
Rick Sarvas

8

Pip install mysqlclient bir hata üretir ve Ubuntu kullanıyorsanız, şunu deneyin:

sudo apt-get install -y python-dev libmysqlclient-dev && sudo pip install mysqlclient

6

Aynı durumu pencereler altında gördüm ve çözümü aradım.

Bu gönderiyi görme mysql-python'u (Windows) yükleyin .

Böyle bir pip ortamının kurulumunun zor olduğunu, diğer birçok bağımlılığa ihtiyaç duyduğunu belirtiyor.

Ama nihayet biliyorum ki mysqlclientbir sürüm ile kullanırsak 1.3.4, artık bu gerekliliklere ihtiyaç duymaz, bu yüzden şunu deneyin:

pip install mysqlclient==1.3.4

4
  • İle proje dizininize gidin cd.
  • kaynak / bin / enable (daha önce değilse çevrenizi etkinleştirin).
  • Komutu çalıştır easy_install MySQL-python

1
ÇalışmazModuleNotFoundError: No module named 'ConfigParser'
TomSawyer

4
pip install --user mysqlclient 

Yukarıdaki benim için cazibe gibi çalışır.Aslında sqlalchemy hata giderim. Çevre bilgisi:

Python: 3.6, Ubuntu: 16.04, konda 4.6.8


3

Derevo'ya teşekkürler ama bunu yapmanın başka iyi bir yolu olduğunu düşünüyorum:

  1. ActivePython'u indirin ve yükleyin
  2. Komut İstemini Aç
  3. tip pypm install mysql-python
  4. Bu pakete özgü notları okuyun.

Bence pypmdaha güçlü ve güvenilir easy_install.


Ücretli bir abonelik gerektiriyor gibi görünüyorCan't install mysql-python-1.2.3: requires Business Edition subscription
Jeremy S.

Ben öyle düşünmüyorum. Bunu sorunsuz bir şekilde kurduğumu hatırlıyorum.
Afshin Mehrabani

pypm neden easy_install'dan daha güçlü ve güvenilir olduğunu düşünüyorsunuz? bunu desteklemek için herhangi bir puan? herhangi bir makale / blog yazısı var mı?
Sandeep Raju Prabhakar

2
Sanırım bu, bunu desteklemek için makale / blog yazısı olacaktır: PI demek, hadi, böyle bir yorumu, aynı iddia eden başka biriyle değil, genellikle teknik argümanlarla destekliyorsunuz, ancak argümanları olmayabilir. Ancak, argümanlar iyi olurdu;)
Herbert

3

İçin Python 3+ sürümü

olarak yükle mysql-connector:

pip3 install mysql-connector 

Örnek Python DB bağlantı kodu:

import mysql.connector
db_connection = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd=""
)
print(db_connection)

Çıktı:

> <mysql.connector.connection.MySQLConnection object at > 0x000002338A4C6B00>

Bu, veritabanının doğru şekilde bağlandığı anlamına gelir.


3

Size pymysqlplatformdan bağımsız bir arayüz sağlayan ve üzerinden kurulabilen orijinal MySQL konnektörü kullanmak yerine kişisel olarak kullanmanızı öneririm.pip .

Ve SQLAlchemy URL şemasını şu şekilde düzenleyebilirsiniz: mysql+pymysql://username:passwd@host/database


3

Python 3.6+ için sudo apt-get install libmysqlclient-devve pip3 install mysqlclient hile yapar


2

Vista üzerinde çalışıyorsanız, Bitnami Django yığınını kontrol etmek isteyebilirsiniz . Başlamayı gerçekten kolaylaştırmak için Bitrock çapraz platform yükleyicileriyle paketlenmiş bir hepsi bir arada Apache, Python, MySQL, vb . Windows, Mac ve Linux üzerinde çalışır. Oh, ve tamamen ücretsiz :)


O zaman neden Vista'dan daha fazla çalışacaksa "Vista üzerinde çalışıyorsanız" dediniz? Bu yanıltıcı ve kafa karıştırıcı.
Anthony

3
Anthony'ye: En çok oy alan yorumun Linux, FreeBSD ve OSX için talimatlar sağladığını ancak posterde belirtildiği gibi Vista için talimatlar vermediğini öğrendim
Daniel Lopez

2

Yukarıdaki yöntemleri denedim, ama yine de 'MySQLdb' adlı hiçbir modül, nihayet, başarılı

easy_install mysql-python

benim env olur unbuntu 14.04



1

OSX'te bu komutlar benim için çalıştı

brew install mysql-connector-c 
pip install MySQL-python

1

SQLAlchemy kullanıyorsanız ve hata içindeyse /site-packages/sqlalchemy/dialects/mysql/mysqldb.py:

from ...connectors.mysqldb import (
                        MySQLDBExecutionContext,
                        MySQLDBCompiler,
                        MySQLDBIdentifierPreparer,
                        MySQLDBConnector
                    )

bu yüzden mysqldb konektörünü kaçırmış olabilirsiniz SQLAlchemyve çözüm, mysql-pythonmodülü yükledikten sonra sqlalchemy'yi yeniden kurmaktır .


0

Win10 / Python27 bu benim için çalıştı:

easy_install mysql-python

diğer tüm 'pip install ...' bağımlılık hatalarıyla başarısız oldu


0

Yukarıdakilerin hiçbiri benim için docker görüntüsü aracılığıyla bir Ubuntu 18.04 yeni kurulumunda işe yaramadı.

Aşağıdaki benim için çözdü:

apt-get install holland python3-mysqldb


0

Catalina v10.15.2 çalıştıran mac'umda aşağıdaki MySQLdb sürüm çakışması vardı:

ImportError: this is MySQLdb version (1, 2, 5, 'final', 1), but _mysql is version (1, 4, 6, 'final', 0)

Çözmek için aşağıdakileri yaptım:

pip uninstall MySQL-python
pip install MySQL-python

0

Debian Buster'da aşağıdaki çözüm benim için python 3.7 ile çalıştı:

sudo apt-get install libmysqlclient-dev
sudo apt-get install libssl-dev
pip install mysqlclient

0

Ubuntu'dayım (linux) ve benim için işe yarayan

sudo apt-get install python3-dev default-libmysqlclient-dev build-essential

ve sonra sonunda

pip install mysqlclient
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.