2016-09-19 11 views
6

私はこの問題を解決するために多くのことを試してみましたが、私はそれを解決しませんでした。私はgoogleとstackoverflowで多くの検索をしましたが、オプションは私のために働いていません。私を助けてください。前もって感謝します。私はdjango 1.10、python 3.4を使用しています。 私は試しました:読み込みエラーのMySQLdbモジュール:という名前のモジュールのMySQLdbは「

  1. pip install mysqldb。
  2. pip install mysql。
  3. pip install mysql-python。
  4. pipインストールMySQL-python。
  5. easy_install mysql-python。
  6. easy_install MySQL-python。

それ以外は左?

 C:\Users\benq\Desktop\dimo-develop\Project>python manage.py runserver 
Unhandled exception in thread started by <function check_errors.<locals>.wrapper at 0x0332D348> 
Traceback (most recent call last): 
    File "C:\Python34\lib\site-packages\django\db\backends\mysql\base.py", line 25, in <module> 
    import MySQLdb as Database 
ImportError: No module named 'MySQLdb' 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
    File "C:\Python34\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "C:\Python34\lib\site-packages\django\core\management\commands\runserver.py", line 109, in inner_run 
    autoreload.raise_last_exception() 
    File "C:\Python34\lib\site-packages\django\utils\autoreload.py", line 249, in raise_last_exception 
    six.reraise(*_exception) 
    File "C:\Python34\lib\site-packages\django\utils\six.py", line 685, in reraise 
    raise value.with_traceback(tb) 
    File "C:\Python34\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper 
    fn(*args, **kwargs) 
    File "C:\Python34\lib\site-packages\django\__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "C:\Python34\lib\site-packages\django\apps\registry.py", line 108, in populate 
    app_config.import_models(all_models) 
    File "C:\Python34\lib\site-packages\django\apps\config.py", line 202, in import_models 
    self.models_module = import_module(models_module_name) 
    File "C:\Python34\lib\importlib\__init__.py", line 109, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "<frozen importlib._bootstrap>", line 2254, in _gcd_import 
    File "<frozen importlib._bootstrap>", line 2237, in _find_and_load 
    File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked 
    File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked 
    File "<frozen importlib._bootstrap>", line 1129, in _exec 
    File "<frozen importlib._bootstrap>", line 1471, in exec_module 
    File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed 
    File "C:\Python34\lib\site-packages\django\contrib\auth\models.py", line 4, in <module> 
    from django.contrib.auth.base_user import AbstractBaseUser, BaseUserManager 
    File "C:\Python34\lib\site-packages\django\contrib\auth\base_user.py", line 49, in <module> 
    class AbstractBaseUser(models.Model): 
    File "C:\Python34\lib\site-packages\django\db\models\base.py", line 108, in __new__ 
    new_class.add_to_class('_meta', Options(meta, app_label)) 
    File "C:\Python34\lib\site-packages\django\db\models\base.py", line 299, in add_to_class 
    value.contribute_to_class(cls, name) 
    File "C:\Python34\lib\site-packages\django\db\models\options.py", line 263, in contribute_to_class 
    self.db_table = truncate_name(self.db_table, connection.ops.max_name_length()) 
    File "C:\Python34\lib\site-packages\django\db\__init__.py", line 36, in __getattr__ 
    return getattr(connections[DEFAULT_DB_ALIAS], item) 
    File "C:\Python34\lib\site-packages\django\db\utils.py", line 212, in __getitem__ 
    backend = load_backend(db['ENGINE']) 
    File "C:\Python34\lib\site-packages\django\db\utils.py", line 116, in load_backend 
    return import_module('%s.base' % backend_name) 
    File "C:\Python34\lib\importlib\__init__.py", line 109, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "C:\Python34\lib\site-packages\django\db\backends\mysql\base.py", line 28, in <module> 
    raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e) 
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named 'MySQLdb' 

答えて

9

MySQLdbはPython 2.x専用です。 Python 3.xバージョンではインストールできません。あなたの質問から私はあなたがDjangoを使っていることが分かります。これはあなたに二つの選択肢、あるmysqlclientとMySQL-接続-pythonのを与える

  • のMySQLdb
  • はmysqlclient
  • のmysql-接続-pythonの

:この場合、あなたはDjango mysql notesからの3つの選択肢を持っています最初のプラグインはプラグインの拡張機能からのコンパイルを必要とし、WindowsではVStudioライブラリとコンパイルネイティブ拡張のノウハウを意味します。

のmysql-接続-Pythonはコンパイルされていない(と私は多分だけdevに関する、生産のためにこれをお勧めしません)ので、あなたはこれをインストールする必要があるとしています。

あなたは試すことができます:

pip3 install mysql-connect-python 

または

pip3 install http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.4.zip 

最初の1が失敗した場合。

+1

pip3 install http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.4.zipこれは機能しました! –

+0

mysqlクライアントが私を助けました、ありがとう! – pavitran

1

MySQLdbはPython 3と互換性がありません。mysql-clientまたはmysql-connectを使用してください。

+0

私はこのエラーを得たsetup.py installを

  • (あなたがmysql_configをのパスを与えることができます):要件を満たすバージョンが見つかりませんでしたmysql-client 実行後にmysql-client –

  • +0

    の一致するディストリビューションが見つかりません:pip install mysql-client –

    +1

    要件を満たすバージョンが見つかりませんでしたmysql-connect(バージョン:から) mysql-connect –

    8

    あなたは代わりのMySQLdbのはmysqlclientを使用することができます。 MySqLdbはPython 3と互換性がありません。

    pip install mysqlclient 
    
    +0

    の一致するディストリビューションが見つかりませんでした。( –

    +0

    コマンド "C:\ Python34 \ python.exe -u -c" import setuptools、tokenize; __ file __ = 'C:\\ Users \\ benq \\ AppData (トークン化、 'オープン'、オープン)(__ファイル__)。read()。replace( '')インストール - レコードC:¥Users¥benq¥AppData¥Local¥Temp¥pip-zmdp676g-record¥install-record.txt - C:\ Users \ benq \ AppData \ Local \ Temp \ pip-build-g79sedbo \ mysqlclient \ –

    +1

    でエラーコード1で失敗しましたmysqlclient-1.3.7-cp27をダウンロードしてみてください-none-win_amd64.whl https://pypi.python.org/pypi/mysqlclientからインストールし、pip installでインストールしてください。mysqlclient-1.3.7-cp27-none-win_amd64.whl – ettanany

    11

    のMySQLdbは、MySQLデータベースへのインタフェースです。他の投稿で述べたように、MySQLdbはPython 3.xをサポートしていません。 PyMySQLを代わりに使用しました。あなたは、まずそれをインストールする必要があります。

    pip install PyMySQL 
    

    次のステップは威圧されるすべてのコードの「pymysql」と「のMySQLdb」を交換することです。幸運なことに、PyMySQLは、データベースのダメージとしてMySQLdbとしてロードすることができます。 Djangoでこれを実現するには、プロジェクトのデフォルトアプリケーションのディレクトリの下にある__init__.pyファイルに次の行を追加する必要があります( 'myproject'という名前のプロジェクトがあれば、myproject/myproject/initに行を追加してください)。py):

    この__init__.pyは、Djangoプロジェクトを実行するときに実行され、MySQLdbが置き換えられます。あなたは問題が解決されます。

    +0

    はpython3.5で私の仕事をしてくれてありがとう。 – heliotrope

    +0

    私のためにも動作します.. python 3.6ありがとうございました –

    +0

    あなたは私の結婚を救った! – Jing

    1

    また、ソースから直接はmysqlclient-pythonのをインストールしてみてくださいすることができます:gitのクローンまたはZIPファイル(URL - https://github.com/PyMySQL/mysqlclient-python.git)によって

    1. ダウンロードソース。

    2. カスタマイズsite.cfg Pythonは

    関連する問題