python的webpy的mysql连接中出现的问题
Library not loaded: libmysqlclient.18.dylib Reason: image not found解决方案
(1)出现的问题是,使用django连接mysql时出现问题,出现以下错误:
raiseImproperlyConfigured("Error loading MySQLdb module: %s"% e)
Error loading MySQLdb module: dlopen(/Library/Python/2.7/site-packages/_mysql.so,2): Librarynotloaded: libmysqlclient.18.dylib
Referenced from : /Library/Python/2.7/site-packages/_mysql.so
Reason: image not found
主要症结在这句话:Library not loaded: libmysqlclient.18.dylib。
原因:是因为一个模块libmysqlclient.18.dylib没有加载进来,而这个模块其实是已经安装了的,所以原因在于,我们安装的地方和被引用的地方不一致,所以需要在被引用的地方加一个软连接指向我们安装的地方。
——使用下面命令:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/lib/libmysqlclient.18.dylib
是不是很眼熟,这条命令估计你搜索这么久答案已经看过好多了吧。但是坑爹的是网上给出的答案基本都有不一样的地方,主要不一样如下:
如:http://my.oschina.net/u/943107/blog/188269里给出的解决方案是:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.lib /usr/lib/libmysqlclient.18.dylib
仔细看,发现文件最后的后缀不一样,我们的时同一个文件,这里写成了lib和dylib。
再如:https://forums.developer.apple.com/thread/7935苹果开发者论坛上给出的解决方案:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/lib/libmysqlclient.18.dylib
仔细看,后面的软连接的路径是不同的,我们照搬这个的话会提示没有这个路径。
网友评论