web-dev-qa-db-ja.com

ImportError:「MySQL」という名前のモジュールはありません

MySQL用のConnector/Pythonを正常にダウンロードしました。 Pythonのシェルで次のコードを使用して、接続をテストしました。

import mysql.connector

次のエラーメッセージが表示されました。

Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    import mysql.connector
ImportError: No module named 'mysql'

MySQLが認識されない理由がわかりません。

36
Melanie

私は同様の問題に直面していました。私の環境の詳細-Python 2.7.11 pip 9.0.1 CentOSリリース5.11(最終)

pythonインタープリターのエラー-

>>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
>>>

Pipを使用して利用可能なモジュールを検索します-

$ pip search mysql-connector | grep --color mysql-connector-python



mysql-connector-python-rf (2.2.2)        - MySQL driver written in Python
mysql-connector-python (2.0.4)           - MySQL driver written in Python

Mysql-connector-python-rfをインストールします-

$ pip install mysql-connector-python-rf

確認する

$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>

ありがとう=)

48
Rishi

CLIから簡単にインストールできますか?

pip install mysql-connector-python-rf

パッケージ名がインポートライブラリ名と異なります

またはコードの私の普遍的なバリアント:

import pip
pip.main(['install','mysql-connector-python-rf'])

Pipの新しいバージョンの場合:

from pip._internal import main
main(['install','mysql-connector-python-rf'])

より良い-pythonインストールの実行中に必要なモジュールをインストールします(多くの場合)

pip3 install mysql-connectorを使用してpythonパッケージをインストールします(Pythonを使用している場合3. Python 2の場合はpipを使用できます)。

10
ilexcel

私がした愚かな間違いは、mysql.pyを同じディレクトリに保持することでした。 mysql.pyの名前を別の名前に変更して、pythonをモジュールと見なさないようにしてください。

7
Deepak Chauhan

試してみて

Sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz

gunzip mysql-connector-python-2.1.3.tar.gz

tar xf mysql-connector-python-2.1.3.tar

cd mysql-connector-python-2.1.3

Sudo python3 setup.py install
4
gdxn96

ただ注意してください、ちょうどmysqlをubuntu 16.04サーバーにインストールしました。次の順序でさまざまなオプションを試しました。

  • リポジトリからパッケージを使用するSudo apt-get install python-mysqldb:正しくインストールされましたが、残念ながらpythonはImportError: No module named 'mysql'を返しました
  • mysqlからのubuntuパッケージを使用:wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python_2.1.4-1ubuntu16.04_all.debSudo dpckg -i package_nameで正しくインストールされましたが、pythonは同じエラーを返しました。
  • tar.gzファイルを使用して、pythonでインストールすると、問題なく動作しました。
    • wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.6.tar.gz(その時点で2.1.4を使用)
    • tar -xf mysql-connector-python-2.1.6.tar.gz
    • cd mysql-connector-python-2.1.6/
    • Sudo python3 setup.py install

最初の2つが失敗した理由を調査しませんでした。後で試す可能性があります。これが誰かを助けることを願っています。

3
cristian

@ gdxn96ソリューションが私にとってはうまくいくことがわかりましたが、1つの変更がありました。

Sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz
tar -zxvf mysql-connector-python-2.1.3.tar
cd mysql-connector-python-2.1.3
Sudo python3 setup.py install
2
Spac3

この問題は私にとってペストでした!!! 100%の解決策は、mysqlモジュールの使用を忘れることです:import mysql.connector、代わりにimport pymysql経由で pymysql を使用します。手順に従ってインストールしました:python3 -m pip install PyMySQL

変更を加えました:1.インポートステートメント2.コネクタ3.カーソル

その後、すべてが魅力的に機能しました。お役に立てれば!

0
Mr. B7

ソースフォルダーconnectorをフォルダーmysqlからsite-packagesに移動しました。 import connectorを実行します

0
Горыныч

次のコマンドのいずれかを使用する必要があります。どちらを使用するかは、異なる2 OSおよびソフトウェアに依存します。

Sudo easy_install mysql-python (mix os)
Sudo pip install mysql-python (mix os)
Sudo apt-get install python-mysqldb (Linux Ubuntu, ...)
cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
yum install MySQL-python (Linux Fedora, CentOS ...)
0
Ashish Gupta

別の理由を見つけました:プログラムファイルのパスにスペースまたは特殊文字が含まれている場合、このエラーが発生します。

0
Gábor Soós

MySQLコネクタバンドルがPCにインストールされているかどうかを確認するだけです

0
James Newborn

python環境の依存関係を管理するには、anacondaを使用する必要があります。 MySQLコネクタはcondaインストーラーを使用してインストールできます

conda install -c anaconda mysql-connector-python
0
akshat thakar