MySQLdbという名前のモジュールはありません


400

Pythonバージョン2.5.4を使用していて、MySQLバージョン5.0とDjangoをインストールしています。DjangoはPythonでは問題なく動作しますが、MySQLでは動作しません。Windows Vistaで使用しています。


43
pip install mysql-pythonまたはpip install mysqlclient
・クール

13
私はsudo apt-get install libmysqlclient-devそれを動作させるためにインストールする必要がありました。
b00r00x0

pip install mysqlclientはWindows x64で動作しました10、あなたはCœurをロックしました
Itachi Sama

8
Python3.6用sudo apt-get install libmysqlclient-devpip3 install mysqlclient私のために働いた
Umair

回答:


638

次のいずれかのコマンドを使用する必要があります。どのOSとソフトウェアを使用しているかによります。

  1. easy_install mysql-python(ミックスOS)
  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 / ports / databases / py-MySQLdb && make install clean(FreeBSD)
  6. yum install MySQL-python(Linux Fedora、CentOS ...)

Windowsの場合は、この回答を参照してください。mysql-pythonをインストールします(Windows)。


1
これを機能させるには、Mac OSで更新したバージョンのpythonと一致するようにsetuptoolsのバージョンを更新する必要がありました。
ジョナサンアデルソン2011

4
そして、それをPython 3でvirtualenvにインストールするのはどうですか?私が使用:pip install mysql-python only to get:ImportError:No module named ConfigParser
Iliyan Bobev

9
Python 3では、ConfigParserはPEP 8に準拠するためにconfigparserに名前が変更されました。それはあなたが現在のPython 3をサポートしていないのPython 3のMySQL-pythonのをサポートしていませんインストールしているパッケージのように見えます
derevo

2
1または2を使用する場合、私はこのエラーを受け取るOSX YosemiteEnvironmentError: mysql_config not found
モナジャラル

1
FYI-私はubuntu 18を使用していて、python3.7を使用しています。「pip install mysqlclient」を実行した後、インストールを成功させるには「sudo apt-get install libmysqlclient-dev」を実行する必要がありました。
Rashmi Singh

143

...そしてpython3.xにはMySQLdbないことを思い出してください

(私は質問がpython2.xについてであることを知っていますが、グーグルはこの投稿をかなり高く評価しています)


編集:コメントで述べたように、Python 3サポートを追加するMySQLdbのフォークがあります:github.com/PyMySQL/mysqlclient-python


Urghhgwaarrbl ... Djangoアプリでpython3を使用したいという希望があります
Don Cheadle

6
幸いなことに、いくつかの選択肢があり、その多くは同じAPIを使用しています:Python 3とMySQL
Anthony Geoghegan

4
mysqlclientは、MySQLdbのフォークであり、Python 3で適切に動作します
。– ostrokach

@JanekOlszak私はこれを知りませんでした-これを読んで2.7に交換するまで、たった1日たっぷりの呪いとキーボードの強打をしました。そして、何が推測されても、すべてが
順調に動作します〜– 3kstc

私の旅、これ-> これ -> これ。そして、ようやくうまくインストールできました。
daka

68

あなたのpythonバージョンが3.5である場合、を行うとpip install mysqlclient、他のことは私にとってうまくいきませんでした


なぜこの回答が反対票が投じられたのかはわかりませんmysqlclientが、MySQLdbプロジェクトのフォークであり、これがWindows 10でうまく機能したことを確認できます
Hamman Samuel

1
arch linuxで私のために働いた
Luke Dupin 2017年

Ubuntu 16.10、Python 3.5.2+で作業
tivadj 2017

Ubuntu 14.04 Python 3.4.3で
作業

macOS、Python 3.6.0で作業
Miguel Mota

48

mysqldbPython用のモジュールであり、プリインストールまたはDjangoに付属していません。mysqldb こちらからダウンロードできます


1
MySQL-python-1.2.1をインストールしようとすると、次のメッセージが表示されます:ImportError:setuptoolsという名前のモジュールがありませんsetuptools をインストールしようとすると、zlibが利用でき ません。
Pierre de LESPINAY、2011年

モジュールをダウンロードしたら、mysql_configとrunの正しいパスを使用してsite.cfgファイルを編集する必要がありますpython setup.py install
ntanase


25

これはpython 3.xではテストされていません。

CMD

pip install wheel
pip install pymysql

settings.py

import pymysql
pymysql.install_as_MySQLdb()

私と一緒に働いた


3
「pip3 install mysqlclient」はpython3.6 /の問題を解決します
showmyroutes 2017

私はこれを十分に賛成できない!Databricksで機能する唯一のソリューション..
Foxan Ng 2018

13
pip install PyMySQL

次に、この2行をProject / Project / init .pyに追加します

import pymysql
pymysql.install_as_MySQLdb()

WINおよびpython 3.3以降で動作


私はあなたの提案をうまく使いました。変更点は、インポートコマンドのみでした:import pymysqlタイプがありました。
ホルヘ

私のためにwindows10、p​​ython 3.6、仮想環境で動作しました
Yikang Luo

1
このハックが大好きです。私はそれなしで動作させることができましたが、whqlバイナリを組み込む必要がありました。
2018年

正解です。
ジョシー・カルデロン


9

ウィンドウの場合:

pip install mysqlclient pymysql

次に:

pymysqlのインポートpymysql.install_as_MySQLdb()

Python 3 Ubuntu用

sudo apt-get install -y python3-mysqldb

Windows 10(Python 3.6.2)で「pip install mysqlclient pymysql」だけを実行すると、問題が解決しました。
リックサーバス

8

pip install mysqlclientでエラーが発生し、Ubuntuを使用している場合は、以下を試してください。

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

6

私は窓の下で同じ状況に出会い、解決策を探しました。

この投稿見るインストールmysql-python(Windows)

そのようなpip環境のインストールは困難であり、他の多くの依存関係が必要であることを指摘しています。

しかし、私は最終的にmysqlclient、までのバージョンで使用する場合1.3.4、それ以上その要件は必要ないことを知っているので、以下を試してください。

pip install mysqlclient==1.3.4

4
  • プロジェクトディレクトリに移動します cd
  • source / bin / activate(以前は環境をアクティブ化していなかった場合)。
  • コマンドを実行する easy_install MySQL-python

1
動作しませんModuleNotFoundError: No module named 'ConfigParser'
TomSawyer

4
pip install --user mysqlclient 

上記は私にとってチャームのように私のために働きます。私は実際にsqlalchemyからのエラーに行きます。環境情報:

Python:3.6、Ubuntu:16.04、conda 4.6.8


3

derevoに感謝しますが、これを行うには別の良い方法があると思います。

  1. ActivePythonをダウンロードしてインストールする
  2. コマンドプロンプトを開く
  3. タイプ pypm install mysql-python
  4. このパッケージに固有の注意事項をお読みください。

pypmはより強力で信頼できると思いますeasy_install


有料サブスクリプションが必要なようですCan't install mysql-python-1.2.3: requires Business Edition subscription
Jeremy S.

私はそうは思いません。問題なくインストールしたことを覚えています。
Afshin Mehrabani

なぜpypmはeasy_installよりも強力で信頼性が高いと思いますか?それをサポートするポイントはありますか?記事/ブログ投稿?
Sandeep Raju Prabhakar 2013

2
これは、次のことをサポートする記事/ブログの投稿だと思います。ただし、引数は適切です;)
ハーバート

3

のPython 3+バージョン

mysql-connectorとしてインストール:

pip3 install mysql-connector 

Python DB接続コードの例:

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

出力:

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

つまり、データベースは正しく接続されています。


3

個人的にpymysqlは、プラットフォームに依存しないインターフェースを提供し、次の方法でインストールできる正規のMySQLコネクタを使用する代わりに使用することをお勧めします。pip

そして、次のようにSQLAlchemy URLスキーマを編集できます。 mysql+pymysql://username:passwd@host/database


3

Pythonの3.6以降の場合sudo apt-get install libmysqlclient-devpip3 install mysqlclient トリックを行います


2

Vistaで実行している場合は、Bitnami Djangoスタックを確認してくださいこれは、Apache、Python、MySQLなどのオールインワンスタックであり、Bitrockクロスプラットフォームインストーラーでパッケージ化されているため、簡単に使い始めることができます。Windows、Mac、Linuxで動作します。ああ、そして完全に無料です:)


では、Vista以外でも動作するのに、なぜ「Vistaで実行している場合」と言ったのですか。これは誤解を招きやすく、混乱を招きます。
Anthony、

3
Anthonyへ:投票数の多いコメントがLinux、FreeBSD、OSXに関する指示であるが、Vistaに関する指示ではないことを面白いと思いました
Daniel Lopez

2

上記の方法を試しましたが、まだ「MySQLdb」という名前のモジュールはありません。最後に、

easy_install mysql-python

私の環境はunbuntu 14.04です


virtualenvの/ python2.7の成功
グエン


1

SQLAlchemyを使用していて、エラーが次の場合/site-packages/sqlalchemy/dialects/mysql/mysqldb.py

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

ので、mysqldbコネクターを見逃した可能性があります。SQLAlchemy解決策は、mysql-pythonモジュールのインストール後にsqlalchemyを再インストールすることです。


0

Win10 / Python27これは私のために働きました:

easy_install mysql-python

他のすべての「pip install ...」は依存関係エラーで失敗しました


0

上記のどれも、Dockerイメージを介したUbuntu 18.04の新規インストールでは機能しませんでした。

以下は私のためにそれを解決しました:

apt-get install holland python3-mysqldb


0

Catalina v10.15.2を実行しているMacで、次のMySQLdbバージョンの競合が発生しました。

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

それを解決するために、私は次のことをしました:

pip uninstall MySQL-python
pip install MySQL-python

0

Debian Busterでは、次のソリューションがpython 3.7で私のために機能しました:

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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.