我在 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)
如何解决这个问题?
最佳答案
这很可能是由于您正在使用的 Python、您安装的 MySQLdb 适配器以及您已安装的 MySQL 客户端库之间的架构不匹配造成的。它们都需要至少有一种通用架构并在该架构中执行。您可能有一个仅 32 位的 Python 和一个仅 64 位的 MySQL 客户端库,反之亦然。确保它们匹配。
除非您需要正在使用的 Python,否则我强烈建议您从第三方包管理器安装完整的解决方案。例如,如果您安装 MacPorts 基础版,则可以使用一个命令安装所需的所有内容(Python 2.7、MySQLdb、MySQL 客户端库和所有依赖项):
sudo port install py27-mysql
关于python - "Import Error: dynamic module does not define init function (init_mysql)"在 OS X 上导入 MySQLdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13227818/