mojave python 3.7 libmysqlclient.21.dylib issue



mojave Python 3.7 libmysqlclient.21.dylib issue

File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/MySQLdb/__init__.py", line 18, in <module>
import _mysql
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/_mysql.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libmysqlclient.21.dylib
Referenced from: /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/_mysql.cpython-37m-darwin.so
Reason: image not found

我在Python 3.6上的项目是寻找libmysqlclient.21.dylib。

我安装了brew install mysql-client.它安装了mysql-client 8.0。它有libmysqlclient.21.dylib。我想使用 mysql@5.6 的地方。

所以我将 libmysqlclient.21.dylib 从/usr/local/Cellar/mysql-client/8.0.19/lib 复制到/usr/local/lib/

sudo ln -s /usr/local/Cellar/mysql-client/8.0.19/lib/libmysqlclient.21.dylib /usr/local/lib/libmysqlclient.21.dylib

所以这是一个Python,mysql,mysql客户端版本不匹配的问题。

mysql@5.6 有 libmysqlclient.18 mysql@5.7 有 libmysqlclient.20

按照MAC OSX Catalina中的上述解决方法进行操作。

最新更新