从Python导入MySQLdb(mysqlclient模块)会在Mac OS Catalina中引发一个与openss



StackOverflow中也有类似的问题,但在2020年2月的Mac OS Catalina中,没有一个问题对我完全有效。我甚至没有尝试那些涉及权限、链接或低级解决方案的大规模更改,而这些更改可能会在未来付费。

我最终得到了一个类似但更安全的解决方案:

brew uninstall openssl

Homebrew可能会警告您其他依赖它的软件包,特别是mysql,可能还有python@3.8或其他软件包不要强制执行,只需卸载所有它们:

brew uninstall mysql
brew uninstall python@3.8
brew uninstall ...  # everything you have as dependencies
brew uninstall openssl

现在只需重新安装mysqlopenssl也会自动重新安装,这次没有错误:

brew install mysql

现在一切都会恢复正常:

python
import MySQLdb

编辑

如果它仍然失败,请查看它是否是pip的缓存,即保持问题的缓存:

brew info openssl  # to copy your LDFLAGS path of the lib
pip uninstall mysqlclient
LDFLAGS="-L/usr/local/opt/openssl@1.1/lib" pip install --no-cache-dir mysqlclient
python
import MySQLdb

最新更新