🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

424閲覧

Win10 django2.2 mysql5.7でmigrateできない

expy

総合スコア103

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/11/11 05:17

編集2019/11/11 05:42

環境
windows10 pro
python3.8.0

python

1venv環境(pylint,mysqlclient,djangoと依存関係(全てpip install)) 2 astroid 2.3.3 3 colorama 0.4.1 4 Django 2.2.7 5 isort 4.3.21 6 lazy-object-proxy 1.4.3 7 mccabe 0.6.1 8 mysqlclient 1.4.5 9 pip 19.3.1 10 pylint 2.4.3 11 pytz 2019.3 12 setuptools 41.2.0 13 six 1.13.0 14 sqlparse 0.3.0 15 wrapt 1.11.2

mysql

1mysql5.7.28(zipインストール 環境変数設定済) 2 create database hoge;

cmd

1> C:\user\jibun\venv\scripts\activate 2(venv)> django-admin startproject test-d

django settings.py修正

settings

1 DATABASES = { 2 'default': { 3 'ENGINE': 'django.db.backends.mysql', 4 'NAME': 'hoge', 5 'USER': 'xxxx', 6 'PASSWORD': 'xxxxxxxx', 7 'HOST': '127.0.0.1', 8 'PORT': '3306', 9 } 10}

コマンドプロンプト

cmd

1(venv)> python manage.py migrate 2File "C:\Users\jibun\venv\venv\lib\site-packages\Mysqldb\__init__py". line 21, in <module> 3 raise ImportError("this is Mysqldb version %s, but _mysql is version %r" % 4Import Error: this as Mysqldb version (1.4.5. 'final', 0), but _mysql is version (1.4.4, 'final' 0) 5 6The above exception was the direct cause of the following exception: 7 8~色々出て~ 9 10django.core.exceptions.Improper lyconfigured: Error loading Mysqldb module. 11Did you install mysqlclient?

となります。
mysqlclientはインストール済です。

試したこと
django2.1環境でのpymysqlならマイグレート(runserverも)できました。
別PC(win10 pro)だとdjango 2.2のmysqlclient 1.4.5でマイグレートできました。

どうすればdjango2.2がmysqlclientで動くのか教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決しました。
何故かは不明ですがpython3.8 django2.2 mysqlclientのインストールではmysqldbが上手くインストールされていませんでした。
mysqlclientのwheelをDL(https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient)し、pipインストールしたところmysqldbも入り環境が整いました。
manage.py migrateも実行できました。
結局PC自体の問題なのか何なのか原因は不明ですが、
とりあえず対処としてはmysqlclientのwheelを使ってpip installで上手くいきます。

投稿2019/11/14 02:43

編集2019/11/14 02:44
expy

総合スコア103

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問