75

Windowsでpipを使用してvirtualenvにmysql-pythonをインストールしようとしています。最初は、ここで同じエラーが報告されていましたが、そこでの答えもうまくいきました。今、私はこの次のエラーを受け取っています:

_mysql.c(34) : Fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory

通常の(virtualenvではなく)pythonのsite-packages / MySQLdb dirにシンボリックリンク(Win7)すると、次のようになります。

Error loading MySQLdb module: No module named _mysql

私はここでかなり途方に暮れています。ポインタはありますか?

4

22 に答える 22

92

私がしなければならなかったのは、oracleに移動し、MySQL Connector C 6.0.2をダウンロードして(新しいものは機能しません!)、通常のインストールを実行することだけでした。

https://downloads.mysql.com/archives/cc/

カスタムインストールを介してすべてのオプションのエクストラ(エクストラバイナリ)を含めるようにしてください。これらがないと、win64.msiでは機能しませんでした。

それが終わったら、私はpycharmsに入り、MySQL-python> = 1.2.4パッケージを選択してインストールしましたが、うまくいきました。構成などを更新する必要はありません。これは私が作業するのに最も簡単なバージョンでした。

それが役に立てば幸い

于 2013-05-18T00:29:25.413 に答える
25

受け入れられたソリューションは、mysql-pythonの新しいバージョンでは機能しなくなったようです。site.cfgインストーラーは、編集するファイルを提供しなくなりました。

mysql-pythonをインストールしている場合は、を検索しC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\includeます。MySQLを64ビットでインストールしている場合は、次のコマンドを呼び出すだけです。

  1. mklink /d "C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" "C:\Program Files\MySQL\MySQL Connector C 6.0.2\include"
  2. 走るpip install mysql-python
  3. 手順1で作成したシンボリックリンクを削除します
于 2013-08-09T06:29:01.810 に答える
18

mysql5.5およびconfig-win.hのアップデートが表示されない問題

5.5ではconfig-win。実際には、Windowsのコネクタの別のフォルダに移動しました。すなわちsmthのような:

C:\ Program Files \ MySQL \ Connector C 6.0.2 \ include

この問題を解決するには、「devビット」(実際にコネクタを接続する)をダウンロードするだけでなく、mysqldbインストールスクリプトを変更してincludeフォルダを追加する必要があります。私はそのように簡単な汚い修正をしました。

site.cfg:

# Windows connector libs for MySQL.
connector = C:\Program Files\MySQL\Connector C 6.0.2

setup_windows.pyで行を見つけます

include_dirs = [ os.path.join(mysql_root, r'include') ]:

そして追加:

include_dirs = [ os.path.join(options['connector'], r'include') ]

その後。

醜いですが、mysqldbの作成者が動作を変更するまで機能します。


ほとんど言及するのを忘れました。同じ方法で、libsに同様の追加エントリを追加する必要があります。

library_dirs = [ os.path.join(options['connector'], r'lib\opt') ]

つまり、setup_windows.pyは次のようになります。

...
library_dirs = [ os.path.join(mysql_root, r'lib\opt') ]
library_dirs = [ os.path.join(options['connector'], r'lib\opt') ]
libraries = [ 'kernel32', 'advapi32', 'wsock32', client ]
include_dirs = [ os.path.join(mysql_root, r'include') ]
include_dirs = [ os.path.join(options['connector'], r'include') ]
extra_compile_args = [ '/Zl' ]
...
于 2011-04-16T07:48:27.163 に答える
15

受け入れられた回答は古くなっています。いくつかの提案はすでにパッケージに組み込まれていますが、config-win.hとmysqlclient.libが見つからないというエラーが発生していました。

  • mysql-connector-c-6.0.2-win32.msiをインストールします

    conenctor用のzipファイルもありますが、が mysqlclient.libディレクトリにあるため機能しませんでしたがlib、インストーラーはでそれを予期していlib/optます。site.cfgまたはsetup_windows.pyをハッキングする代わりに、msiがその役割を果たします。

  • pip install mysql-python

PS私はもうMySQLを使用していないので、私の答えも古くなっている可能性があります。

于 2013-09-27T17:19:21.023 に答える
11

私はこの投稿が非常に古いことを知っていますが、それはまだグーグルのトップヒットとして登場しているので、この問題にいくつかの情報を追加します。

私はOPと同じ問題を抱えていましたが、提案された答えはどれも私にはうまくいかなかったようです。主な理由は、「config-win.h」がコネクタインストールフォルダのどこにも存在しなかったためです。

MySQLインストーラーによって提案された最新のConnectorC6.1.6を使用していました。

ただし、これは最新のMySQL-pythonパッケージ(1.2.5)ではサポートされていないようです。インストールしようとすると、Cコネクタ6.0.2を明示的に探していることがわかりました。

"-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include"

したがって、このバージョンをhttps://dev.mysql.com/downloads/file/?id=378015からインストールすることにより、Pythonパッケージが問題なくインストールされます。

于 2016-08-09T08:55:16.620 に答える
7

おそらく答えは、MySQL Developer Buildをインストールし、構成中に「Cheaders\libs」オプションを選択することです。(このエントリで報告されているように:rationalpie.wordpress.comのWindowsでPython用のMySQLdbを構築する)

おそらくさらに良い解決策は、プリコンパイルされたビルドをインストールすることです:http ://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe

于 2010-01-26T19:32:44.097 に答える
5

pipが「MySQLdb」のインストールに失敗した場合の回避策は、最初にこのリンクからダウンロードしてマシンにインストールすることです。

http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

次に、すべてのMySQL*および_mysql*ファイルとディレクトリをシステムPythonからVirtualenvディレクトリにコピーします。

c:\Python27\Lib\site-packages (またはシステムPythonへの同様のパス)から c:\my_virtenv\Lib\site-packages(virtualenvへのパス)

于 2013-12-07T00:07:58.637 に答える
4

それでも問題が解決しない場合は、 http://code.google.com/p/soemin/downloads/detail? name=MySQL-python-1.2.3.win32-py2.7からインストーラーをダウンロードできます。 EXE

于 2011-07-17T10:59:03.043 に答える
4

私もMySQLdbで多くの頭痛がしました。

公式のMysQLPythonコネクタを使用してみませんか?

easy_install mysql-connector-python

または、ここからダウンロードできます:http: //dev.mysql.com/downloads/connector/python/

ドキュメント: http ://dev.mysql.com/doc/refman/5.5/en/connector-python.html

于 2013-01-03T02:50:09.973 に答える
3

mysqlの開発ビットをインストールすると、config-win.h私が抱えていたエラーが取り除かれ、別のエラーがスローされました。Failed to load and parse the manifest. The system cannot find the file specified.私はこの投稿で私の問題に対する答えを見つけました:http ://www.fuyun.org/2009/12/install-mysql-for-python-on-windows/ 。

ファイル'C:\ Python26 \ Lib \ distutils \ msvc9compiler.py`をvirtualenvにコピーし、上記のリンクで提案されている編集を行ったところ、問題なく動作しています。

于 2009-12-29T15:51:33.283 に答える
3

最も簡単なソリューション:

以下のリンクからMySQLコネクタC6.0.2をダウンロードしてインストールします。

http://dev.mysql.com/downloads/connector/c/6.0.html#downloads

MySQL Connector C 6.0.2をインストールした後、フォルダ「MySQL Connector C 6.0.2」を「C:\ ProgramFiles \ MySQL」から「C:\ ProgramFiles(x86)\MySQL」にコピーします。

次に、次のように入力します

pip install MySQL-python

それは間違いなく動作します。

于 2017-09-11T19:42:51.447 に答える
2

私の場合、私の修正は、c:\ Program Files \ MySQL \ MySQL Connectorにあるmysql-connector-c-6.0.2-win32.msi(以前の投稿のユーザー名バッファーから参照)から作成されたフォルダーをコピーすることでした。 C 6.0.2で、プログラムファイル(x86)を使用して新しいパスを作成し、そこにコンテンツを貼り付けます。これは、インストールが32ビットマシンと64ビットマシンの間で適切にチェックされていないためです。

したがって、新しいパスはC:\ Program Files(x86)\ MySQL \ MySQL ConnectorC6.0.2です。これはインストーラーが見つけようとしているパスなので、インストーラーがファイルを見つけるのを助けるためにそこにファイルを貼り付けました。これにより、config-win.hが見つからないというエラーが発生していました。

于 2013-12-08T21:24:13.783 に答える
2

Window10の手順:

  • に移動https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
  • Pythonのバージョンとハードウェアの仕様に従って適切なバージョンをダウンロードします。私の場合、 mysqlclient‑1.4.2‑cp37‑cp37m‑win32.whlPython3.7とIntelCPUで動作します。
  • 環境がまだアクティブになっている間に、ダウンロードフォルダに移動して実行しますpip install mysqlclient-1.4.2-cp37-cp37m-win32.whl
于 2019-04-02T19:47:42.263 に答える
1

ActivePythonをお試しください

pypm -E C:\myvirtualenv install mysql-python
于 2011-03-22T22:21:49.563 に答える
1

私はブガゴッティからの答えに従いました、そしてそれはmysql-python-1.2.5の私のウィンドウ(Win7 64ビット、py27とmysqlコネクタ6.1がインストールされている)では機能しないので、mysql-python-内でさらに汚い変更を加えました1.2.5:

まず、site.cfg:

connector = C:\Program Files\MySQL\MySQL Connector C 6.1

次に、_mysql.c:

#if defined(MS_WINDOWS)
#include <config-win.h>
#else
#include "my_config.h"
#endif

に:

#if 0 /*defined(MS_WINDOWS)*/
#include <config-win.h>
#else
#include "my_config.h"
#endif

これらの変更により、config_win.hの問題はなくなりますが、リンクの問題がまだあります。

LINK : fatal error LNK1181: cannot open input file 'mysqlclient.lib'

このために、setup_windows.pyを変更しました。

library_dirs = [ os.path.join(connector, r'lib\vs9') ]  ## the original value was r'lib\opt'

その後、ようやく機能しました。

于 2014-03-28T02:39:36.667 に答える
1

私はMingcaiSHENの方法に従いました。

しかし、私の場合、コネクタをに変更しました

connector = C:\Program Files\MySQL\MySQL Connector.C 6.1

そして、library_dirsはに変更されます

library_dirs = [ os.path.join(connector, r'lib\vs10') ]

vs9ディレクトリがないからです。動作しますが、理由はわかりません

vs2012をインストールしましたが、コネクタのlibディレクトリにはvs10としかvs11ありません。これvs11は機能しません。私がインストールしたVCForPyhton27.misはをサポートしているようvs9です。

とにかく、これは動作します。そして、あなたがそれを危険にさらしたいなら、あなたは試すことができます。

于 2014-12-27T22:07:08.807 に答える
1

私のために働いた解決策: MySQL Connector /C6.0.2の-bitバージョンと-bitバージョンの Windows両方をインストールします。開いて実行します:3264Command Prompt

pip install mysql-python
于 2016-10-07T20:43:25.940 に答える
1

私にとって、次のアプローチで問題が解決しました(Python 3.5.2; mysqlclient 1.3.9):

  1. 最新のMySQLCコネクタhttp://dev.mysql.com/downloads/connector/c/をダウンロードします(私にとってはWindows(x86、64ビット)、MSIインストーラーでした)
  2. c:\Program Files\MySQL\MySQL Connector C 6.0.2\ディレクトリをにコピーしますc:\Program Files (x86)\MySQL\MySQL Connector C 6.1\
  3. 走るpip install mysqlclient
  4. [オプション]削除c:\Program Files (x86)\MySQL\MySQL Connector C 6.1\

ビルドスクリプトがx86プログラムファイルディレクトリに含まれるCコネクタを見つけようとしているため、ここでの問題はx64ビットインストールの所有者のみにあります。

于 2017-01-10T21:06:26.527 に答える
1
building '_mysql' extension
creating build\temp.win-amd64-2.7
creating build\temp.win-amd64-2.7\Release
C:\Users\TimHuang\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -Dversion_info=(1,2,5,'final',1) -D__version__=1.2.5 "-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" -Ic:\python27\include -Ic:\python27\PC /Tc_mysql.c /Fobuild\temp.win-amd64-2.7\Release\_mysql.obj /Zl
_mysql.c
_mysql.c(42) : fatal error C1083: Cannot open include file: 'config-win.h': No such file or directory

試してみたときにこれが表示された場合pip install mysql-python、最も簡単な方法はコピーすることです

C:\Program Files\MySQL\MySQL Connector C 6.0.2C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2

シンボリックリンクを作成しようとしましたが、Windowsが私を投げ続けます C:\WINDOWS\system32>mklink /d "C:\Program Files (x86)\MySQL\MySQL Connector C 6.0.2\include" "C:\Program Files\MySQL\MySQL Connector C 6.0.2\include" The system cannot find the path specified.

于 2018-04-13T00:00:24.430 に答える
0

Visual Studioを使用しているかどうかに関係なく、仮想環境でこれを実行している場合は、 easy_install MySQL-python

于 2016-10-28T05:13:07.763 に答える
0
  1. これからダウンロード

  2. 次に、pipインストーラーでこのwhlをインストールします。Shiftキーを押しながらダウンロードフォルダを右クリックして、を選択しますOpen powershell here。次に、コマンドを使用してインストールします。pip install package_name.whl

于 2017-08-20T16:08:09.177 に答える
0

コネクタのバージョンをからダウンロードしhttps://dev.mysql.com/downloads/connector/c/6.0.html ます。私の場合、64ビットのコネクタをインストールし、Pythonは32ビットでした。そのため、MySQLをプログラムファイルからプログラムファイルにコピーする必要がありました(86)

于 2018-04-25T16:42:48.130 に答える