2

Mac OS X に python 用の mysqldb をインストールしましたが、次のエラーが表示されます。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.macosx-10.6-intel/egg/MySQLdb/__init__.py", line 19, in <module>
  File "build/bdist.macosx-10.6-intel/egg/_mysql.py", line 7, in <module>
  File "build/bdist.macosx-10.6-intel/egg/_mysql.py", line 6, in __bootstrap__
ImportError: dynamic module does not define init function (init_mysql)

この問題を解決するにはどうすればよいですか?

4

1 に答える 1

4

これは、使用している Python、インストールした MySQLdb アダプタ、およびインストールした MySQL クライアント ライブラリ間のアーキテクチャの不一致が原因である可能性が最も高いです。それらはすべて、少なくとも 1 つの共通アーキテクチャを持ち、そのアーキテクチャで実行する必要があります。32 ビットのみの Python と 64 ビットのみの MySQL クライアント ライブラリを使用している場合もあれば、その逆の場合もあります。それらが一致していることを確認してください。

使用している Python が必要でない限り、サードパーティのパッケージ マネージャーから完全なソリューションをインストールすることを強くお勧めします。たとえば、MacPorts ベースをインストールすると、必要なものすべて (Python 2.7、MySQLdb、MySQL クライアント ライブラリ、およびすべての依存関係) を 1 つのコマンドでインストールできます。

sudo port install py27-mysql
于 2012-11-05T08:19:55.130 に答える