首页 > 开发 > Python > 正文

Mac OS X 10.11下如何安装MySQLdb?

2017-09-06 19:32:09  来源:网友分享

安装完后:

Python 2.7.6 (default, Jul  3 2015, 01:44:46)[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.58)] on darwinType "help", "copyright", "credits" or "license" for more information.>>> import MySQLdbTraceback (most recent call last):  File "<stdin>", line 1, in <module>  File "/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.11-intel.egg/MySQLdb/__init__.py", line 19, in <module>    import _mysqlImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.11-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib  Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.11-intel.egg/_mysql.so  Reason: unsafe use of relative rpath libmysqlclient.18.dylib in /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.11-intel.egg/_mysql.so with restricted binary

然后执行命令:

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

提示:

ln: /usr/lib/libmysqlclient.18.dylib: Operation not permitted

解决方案

原因是 EI Capitan 增加了 System Integrity Protection 的功能,阻止了写入的操作的,默认是开启的,需要关闭。

关闭方式:

重启电脑,开机时按住 cmd + R,进入 Recovery 模式。然后打开终端工具 ,输入命令:csrutil diable,然后再次重启电脑即可。