【问题标题】:Not able to import mysqldb in python on mac无法在mac上的python中导入mysqldb
【发布时间】:2013-10-01 11:42:20
【问题描述】:

我是 mac 和 python 的新手。我已经为 python mac 安装了 mysqldb。但是当我尝试导入它时,这是我得到的错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Python/2.6/site-packages/MySQLdb/__init__.py", line 19, in <module>
    import _mysql
ImportError: dlopen(/Library/Python/2.6/site-packages/_mysql.so, 2): Symbol not found: _strnlen
  Referenced from: /usr/lib/libmysqlclient.18.dylib
  Expected in: /usr/lib/libSystem.B.dylib
 in /usr/lib/libmysqlclient.18.dylib

为什么会出现这个错误?我该如何解决?我已经尝试了在 SO 上发布的大量答案,但似乎没有任何效果。我应该怎么做才能解决这个错误?

谢谢。

【问题讨论】:

  • 你是怎么安装mysql的? (以及你是如何将它放入 /usr/lib 的?)你是如何安装 Python 模块的?你有哪个版本的 OS X?
  • 1)我用谷歌搜索了如何在 mac 上取消隐藏 usr 目录。然后进入它。 mysql已经安装在mac上。我认为使用 wampp。 2)python2.6 已经安装在我开始工作的这台机器上。如果你问我是如何安装 mysqldb 的,我下载了一个 zip 文件并运行 setup.py(阅读 SO 上的说明) 3)我有 10.6.8 版现在,你能帮帮我吗?
  • Python2.6 内置在 OS X 上。MySQL 没有,Python mysqldb 模块也没有。无论如何,仅仅告诉我“我认为使用 wampp”和“下载了一个 zip 文件”并不足以告诉我诊断问题。很明显有些东西是错误的,但我不知道是什么,或者为什么,你让我无法重现它或识别一个已知的问题或任何东西。所以,我只能说,卸载并重新安装它们。
  • 1) 准确地说,我按照这里的步骤操作:stackoverflow.com/questions/1448429/… 看到 74 票赞成的答案。 2)我已经卸载并再次使用 pip 安装 >>pip install mysqldb-python 还有什么可以帮助您诊断的吗?
  • 意思是您从here 下载并安装了 32 位 MySQL,或者只是使用其他一些 MySQL 安装步骤 1-10?

标签: python mysql macos


【解决方案1】:

你安装的时候用sudo了吗?

sudo pip install mysql-python

然后将此行添加到您的~/.bash_profile

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/

【讨论】:

  • 我确实用过上面的东西。然后我得到了一个不同的错误..所以不..这对我也不起作用..
猜你喜欢
  • 2010-10-11
  • 2014-11-22
  • 2012-12-25
  • 2011-06-11
  • 2023-03-25
  • 2011-08-08
  • 1970-01-01
  • 2019-08-23
  • 2011-07-01
相关资源
最近更新 更多