Traceback (most recent call last):
File "/Applications/MAMP/htdocs/Minor Project/xyz.py", line 5, in <module>
import config
File "/Applications/MAMP/htdocs/Minor Project/config.py", line 5, in <module>
import MySQLdb
File "/Users/brijeshlakkad/Library/Python/2.7/lib/python/site-packages/MySQLdb/__init__.py", line 19, in <module>
import _mysql
ImportError: dlopen(/Users/brijeshlakkad/Library/Python/2.7/lib/python/site-packages/_mysql.so, 2): Library not loaded: /usr/local/opt/mysql/lib/libmysqlclient.21.dylib
Referenced from: /Users/brijeshlakkad/Library/Python/2.7/lib/python/site-packages/_mysql.so
**Reason: image not found**
当我使用“ brew install mysql ”安装mysql时,将执行文件。当我执行brew install mysql时,有两个不同的mysql都分别运行。我执行了此文件,然后将所有数据存储在与 phpmyadmin mysql 不同的本地mysql 中。
答案 0 :(得分:0)
简而言之,您的问题是您试图使用古老的mysql-python
库(又名MySQLdb
)。该库在MySQL 5.1天左右就被废弃了,因此它不支持MySQL 6和更高版本,并且您大概拥有MySQL 8.0,因此它所寻找的共享库不存在,因此出现image not found
错误。 / p>
自制软件确实包括一个mysql@5.5
程序包,我认为该程序包具有一个带有正确名称的dylib,该程序包可能已经足够老,可以与{{1 }},如果您真的想那样做,但不会受到支持。或者,您可以下载MySQL 5.0或5.1源并自行构建(没有Mac二进制文件可以在当前macOS上运行的5.6之前的任何版本)。
但是更好的解决方案是使用仍然维护的库。不幸的是,那里有很多选择,但我给人的印象是,大多数人都使用三大选择之一:
mysql-python
是mysqlclient
的分支,它绑定到C版本的当前版本(mysql-python
或从MySQL / Oracle网站下载安装程序)。brew install mysql
是用纯Python重写的,它甚至不需要C库。PyMySQL
是MySQL / Oracle从头开始编写的新实现。 (您可能希望将Oracle Installer与该安装程序一起使用。)MySQL Connector/Python
相比, PyMySQL
是一种更好的直接替换,它可以与Universe中的其他所有内容一起使用,并且它是编写良好的代码,如果有问题,则很容易调试...但是速度可能会很慢。而且,除非需要维护一堆完整的现有代码,否则通常不需要完美的即插即用替换,只需进行非常接近的mysqlclient
调用并支持所有DB-API 2 ,而connect
涵盖了这一点。