未加载库:/usr/local/opt/mysql/lib/libmysqlclient.21.dylib,未找到原因映像 回溯(最近一次呼叫最后一次): 文件“/Applications/MAMP/htdocs/Minor Project/xyz.py”,第5行,在 导入配置 文件“/Applications/MAMP/htdocs/Minor Project/config.py”,第5行,在 导入MySQLdb 文件“/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages/MySQLdb/_-init__;.py”,第19行,在 导入mysql ImportError:dlopen(/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages//u mysql.so,2):未加载库:/usr/local/opt/mysql/lib/libmysqlclient.21.dylib 引用自:/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages//\u mysql.so **原因:找不到图像**

未加载库:/usr/local/opt/mysql/lib/libmysqlclient.21.dylib,未找到原因映像 回溯(最近一次呼叫最后一次): 文件“/Applications/MAMP/htdocs/Minor Project/xyz.py”,第5行,在 导入配置 文件“/Applications/MAMP/htdocs/Minor Project/config.py”,第5行,在 导入MySQLdb 文件“/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages/MySQLdb/_-init__;.py”,第19行,在 导入mysql ImportError:dlopen(/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages//u mysql.so,2):未加载库:/usr/local/opt/mysql/lib/libmysqlclient.21.dylib 引用自:/Users/brijeshlakkad/Library/Python/2.7/lib/Python/site-packages//\u mysql.so **原因:找不到图像**,python,mysql,homebrew,mysql-python,Python,Mysql,Homebrew,Mysql Python,当我使用“brew安装mysql”安装mysql时,文件将被执行。当我执行brew安装mysql时,有两个不同的mysql分别运行。我执行了这个文件,然后所有数据都存储在本地mysql中,与phpmyadmin mysql不同。简而言之,您的问题是,您试图使用古老的mysql python库,即MySQLdb。该库在MySQL 5.1版前后被废弃,因此它不支持MySQL 6及更高版本,而您可能拥有MySQL 8.0,因此它正在寻找的共享库不存在,因此出现了未找到图像错误 自制软件确实包含mysq

当我使用“brew安装mysql”安装mysql时,文件将被执行。当我执行brew安装mysql时,有两个不同的mysql分别运行。我执行了这个文件,然后所有数据都存储在本地mysql中,与phpmyadmin mysql不同。简而言之,您的问题是,您试图使用古老的
mysql python
库,即
MySQLdb
。该库在MySQL 5.1版前后被废弃,因此它不支持MySQL 6及更高版本,而您可能拥有MySQL 8.0,因此它正在寻找的共享库不存在,因此出现了
未找到图像
错误

自制软件确实包含
mysql@5.5
package,我认为它有一个具有正确名称的动态库,如果您真的想这样做,它可能已经足够老了,可以使用
mysql-python
,但它不受支持。或者,您可以下载MySQL 5.0或5.1源代码并自行构建(在当前的macOS上,没有任何比5.6更旧的Mac二进制文件可以运行),这肯定会起作用

但更好的解决方案是使用一个仍在维护的库。不幸的是,有很多选择,但我得到的印象是,大多数人使用三大选择之一:

  • mysqlclient
    mysql-python
    的分支,它绑定到当前版本的C库(
    brew安装mysql
    或从mysql/Oracle网站下载安装程序)
  • PyMySQL
    是纯Python的重写,它甚至不需要C库
  • MySQL连接器/Python
    是MySQL/Oracle从头开始编写的一个新实现。(您可能希望Oracle安装程序具有此功能。)

PyMySQL
是一个比
mysqlclient
更好的替代品,它可以很好地处理宇宙中的所有其他东西,而且它是编写良好的代码,如果您有问题,很容易调试……但它可能非常慢。除非你有一大堆现有的代码需要维护,否则你通常不需要一个完美的替换,只需要一个非常接近的
connect
调用和对所有DB-API 2的支持,
mysqlclient
就可以解决这个问题。

简而言之,您正在尝试使用古老的
mysql-python
库,即
MySQLdb
。该库在MySQL 5.1版前后被废弃,因此它不支持MySQL 6及更高版本,而您可能拥有MySQL 8.0,因此它正在寻找的共享库不存在,因此出现了
未找到图像
错误

自制软件确实包含
mysql@5.5
package,我认为它有一个具有正确名称的动态库,如果您真的想这样做,它可能已经足够老了,可以使用
mysql-python
,但它不受支持。或者,您可以下载MySQL 5.0或5.1源代码并自行构建(在当前的macOS上,没有任何比5.6更旧的Mac二进制文件可以运行),这肯定会起作用

但更好的解决方案是使用一个仍在维护的库。不幸的是,有很多选择,但我得到的印象是,大多数人使用三大选择之一:

  • mysqlclient
    mysql-python
    的分支,它绑定到当前版本的C库(
    brew安装mysql
    或从mysql/Oracle网站下载安装程序)
  • PyMySQL
    是纯Python的重写,它甚至不需要C库
  • MySQL连接器/Python
    是MySQL/Oracle从头开始编写的一个新实现。(您可能希望Oracle安装程序具有此功能。)

PyMySQL
是一个比
mysqlclient
更好的替代品,它可以很好地处理宇宙中的所有其他东西,而且它是编写良好的代码,如果您有问题,很容易调试……但它可能非常慢。除非你有一大堆现有的代码需要维护,否则你通常不需要一个完美的替换,只需要一个非常接近的
connect
调用和对所有DB-API2的支持,
mysqlclient
就可以了。

你真的在使用死了很久的连接器
MySQL-python
,aka
MySQLdb
?如果是这样的话,那么这只适用于MySQL 5.x(并且只有在5.0中进行过全面测试)。你是故意用的吗?或者您使用的是像
pymysql
mysqlclient
这样的现代连接器,可以配置为安装一个drop-in替代
MySQLdb
?同时,我完全不理解您问题的后半部分,但是如果您安装了两个不同的MySQL数据库,并且连接到了错误的数据库,这可能是connect命令的一个问题,但是如果没有实际看到您正在使用的命令,并且不知道如何设置这两个数据库,那么就几乎不可能开始调试。在我执行“brew安装mysql”之后,创建了两个不同的mysql:1。Cell/mysql 2。Mamp mysql phpmyadminI不知道“Mamp mysql phpadmin”是什么意思。但是
brew安装mysql
只需安装
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**