OS X El Capitan 上的 MySQLdb 错误

use*_*934 2 python mysql macos pip mysql-python

我尝试在 iPython 中导入 MySQLdb 并收到以下错误。

ImportError                               Traceback (most recent call last)
<ipython-input-4-f5538763dbdb> in <module>()
----> 1 import MySQLdb as mdb
      2 import sys

/Users/user1/anaconda/lib/python2.7/site-packages/MySQLdb/__init__.py in <module>()
     17 from MySQLdb.release import __version__, version_info, __author__
     18 
---> 19 import _mysql
     20 
     21 if version_info != _mysql.version_info:

ImportError: dlopen(/Users/user1/anaconda/lib/python2.7/site-packages/_mysql.so, 2): Library not loaded: libssl.1.0.0.dylib
  Referenced from: /Users/user1/anaconda/lib/python2.7/site-packages/_mysql.so
  Reason: image not found
Run Code Online (Sandbox Code Playgroud)

我在 Stackoverflow 上发现了一些类似性质的帖子,其中建议应该禁用系统完整性保护,我现在已经有了。

我还按照这篇文章中针对 OSX El Capitan 的建议编辑了我的 bashprofile,Python mysqldb: Library not loaded: libmysqlclient.18.dylib但我仍然无法克服这个问题。

多一点信息以防它有助于诊断问题:

  • Python 版本:Python 2.7.10 |Anaconda 2.4.0 (x86_64)| (默认,2015 年 10 月 19 日,18:31:17)[GCC 4.2.1(Apple Inc. build 5577)]
  • “which python”的结果:/Users/user1/anaconda/bin/python
  • 安装的 MySQL 版本:mysql-5.7.10
  • MySQL-Python 版本:MySQL-python-1.2.5

我哪里错了?

小智 5

你可以试试:

 export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)