Mac OS X - EnvironmentError:未找到 mysql_config

2025-03-18 08:56:00
admin
原创
42
摘要:问题描述:首先,是的,我已经看到过这个:pip install mysql-python 失败,出现 EnvironmentError: 未找到 mysql_config问题我正在尝试在 Google App Engine 项目上使用 Django。但是,由于以下原因,服务器无法正常启动,因此我尚未开始:Im...

问题描述:

首先,是的,我已经看到过这个:

pip install mysql-python 失败,出现 EnvironmentError: 未找到 mysql_config

问题

我正在尝试在 Google App Engine 项目上使用 Django。但是,由于以下原因,服务器无法正常启动,因此我尚未开始:

ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

我做了一些研究,发现所有问题都指向必须安装 Mysql-python,因为它显然不在我的系统上。我实际上尝试卸载它,结果得到以下结果:

Cannot uninstall requirement mysql-python, not installed

每当我实际尝试通过以下方式安装时:

sudo pip install MySQL-python

我收到一条错误信息:

raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found

我已经尝试过运行:

export PATH=$PATH:/usr/local/mysql/bin

但这似乎没有帮助,因为我再次运行安装命令但仍然失败。

有什么想法吗?

请注意我不在虚拟环境中。


解决方案 1:

好的,那么首先,让我检查一下我是否和你意见一致:

  • 你安装了 python

  • 你做到了brew install mysql

  • 你做到了export PATH=$PATH:/usr/local/mysql/bin

  • 最后,你做到了pip install MySQL-Python(或者pip3 install mysqlclient如果使用 Python 3)

如果您按照相同的顺序执行了所有步骤,但仍然出现错误,请继续阅读到最后,但是,如果您没有完全遵循这些步骤,请尝试从头开始遵循它们。

因此,您按照上述步骤操作后仍然出现错误,那么您可以尝试以下几种方法:

  1. 尝试which mysql_config从 bash 运行。可能找不到。这就是构建也找不到它的原因。尝试运行locate mysql_config并查看是否有任何结果返回。此二进制文件的路径需要位于 shell 的 $PATH 环境变量中,或者需要明确位于模块的 setup.py 文件中(假设它在某个特定位置查找该文件)。

  2. 不要使用 MySQL-Python,尝试使用“mysql-connector-python”,可以使用 进行安装pip install mysql-connector-python。有关更多信息,请参见此处和此处。

  3. 手动找到“mysql/bin”、“mysql_config”和“MySQL-Python”的位置,并将这些全部添加到 $PATH 环境变量中。

  4. 如果以上所有步骤都失败了,那么您可以尝试使用 MacPorts 安装“mysql”,在这种情况下,文件“mysql_config”实际上应该被称为“mysql_config5”,在这种情况下,您必须在安装后执行以下操作: 。您可以在此处export PATH=$PATH:/opt/local/lib/mysql5/bin找到更多详细信息。

注 1:我看到有些人说安装python-devlibmysqlclient-dev有帮助,但我不知道这些软件包是否可用于 Mac OS。

注意2:另外,请确保尝试以root身份运行命令。

我从这些地方(除了我的大脑)得到了答案(也许你可以看看它们,看看是否有帮助):1、2、3、4。

我希望我能帮到你,如果知道这些方法是否有效,我会很高兴。祝你好运。

解决方案 2:

如果你不想安装完整的 mysql,我们可以通过安装来解决这个问题mysql-client

brew install mysql-client

一旦 cmd 完成,它将要求添加以下行~/.bash_profile

echo 'export PATH="/usr/local/opt/mysql-client/bin:$PATH"' >> ~/.bash_profile 

关闭终端并启动新终端并继续pip install mysqlclient

解决方案 3:

我一直在调试这个问题 - 3 小时 17 分钟。特别让我恼火的是,我已经通过之前的大学工作在系统上安装了 sql,但 pip/pip3 无法识别它。上面的这些线程以及我在互联网上搜索到的许多其他线程有助于阐明问题,但实际上并没有解决问题。

回答

Pip 正在 Homebrew 目录中寻找 mysql 二进制文件,该目录相对于Macintosh HD @

/usr/local/Cellar/

所以我发现这需要你做一些改变

步骤 1:下载 MySql(如果尚未下载)https://dev.mysql.com/downloads/

步骤 2:找到相对于Macintosh HD和 CD

/usr/local/mysql/bin

步骤 3:打开终端并使用所选的文本编辑器 - 我自己是 Neovim 用户,因此我输入(Mac 不会自动附带... 另一天再讲这个故事)

nvim mysql_config

步骤 4:您将在大约第 112 行看到

# Create options 
libs="-L$pkglibdir"
libs="$libs -l "

更改为

# Create options 
libs="-L$pkglibdir"
libs="$libs -lmysqlclient -lssl -lcrypto"

*你会注意到这个文件具有只读权限,所以如果你使用 vim 或 neovim

:w !sudo tee %

步骤 5:转到主目录并编辑 .bash_profile 文件

cd ~

然后

nvim .bash_profile

并添加

export PATH="/usr/local/mysql/bin:$PATH"

保存到文件然后

步骤 6:相对于Macintosh HD找到路径并添加到其中

cd /private/etc/

然后

nvim paths

并添加

/usr/local/mysql/bin

*你会再次注意到这个文件具有只读权限,所以如果你使用 vim 或 neovim

:w !sudo tee % 

然后

cd ~

然后通过运行以下命令刷新终端以显示更改

source .bash_profile

最后

pip3 install mysqlclient

还有 Viola。记住,这是一种氛围。

解决方案 4:

如果您已经使用Homebrew通过指定版本安装了 mysql,那么mysql_config就会出现在这里。 - /usr/local/Cellar/ mysql@5.6 /5.6.47/bin

您可以在/usr/local/目录中使用 ls 命令找到 sql bin 的路径

/usr/local/Cellar/mysql@5.6/5.6.47/bin

像这样将路径添加到 bash 配置文件中。

nano ~/.bash_profile

export PATH="/usr/local/Cellar/mysql@5.6/5.6.47/bin:$PATH"

解决方案 5:

我在 MacOS Catalina 上运行 Python 3.6。我的问题是,我尝试安装时mysqlclient==1.4.2.post1,它一直抛出 mysql_config not found 错误。

这是我解决问题所采取的步骤。

  1. 使用 brew 安装 mysql-connector-c (如果你已经有 mysql,请先安装 unlink brew unlink mysql) -brew install mysql-connector-c

  2. 打开 mysql_config 并编辑文件第 112 行左右

# Create options 
libs="-L$pkglibdir"
libs="$libs -lmysqlclient -lssl -lcrypto"
  1. brew info openssl- 这将为您提供有关将 openssl 放入 PATH 中需要执行的操作的更多信息

  2. 关于步骤 3,你需要执行以下操作将 openssl 放入 PATH -echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

  3. 让编译器找到 openssl -export LDFLAGS="-L/usr/local/opt/openssl/lib"

  4. 让编译器找到 openssl -export CPPFLAGS="-I/usr/local/opt/openssl/include"

解决方案 6:

当我安装 mysqlclient 时也会发生这种情况,

$ pip install mysqlclient

正如用户 3429036 所说,

$ brew install mysql

解决方案 7:

brew此答案适用于未从而是从官方安装的 MacOS 用户.dmg/.pkg。该安装程序无法编辑您的PATH,导致出现问题:

  1. 无法找到所有 MySQL 命令(例如、、mysql等),结果:mysqladmin`mysql_config`

  2. “MySQL 偏好设置窗格”未出现在“系统偏好设置”中,并且

  3. 你不能安装任何与 MySQL 通信的 API,包括mysqlclient

您要做的是附加 MySQLbin文件夹(通常/usr/local/mysql/bin在您的文件PATH中添加此行~/.bash_profile

export PATH="/usr/local/mysql/bin/:$PATH"

然后您应该重新加载~/.bash_profile以使更改在当前终端会话中生效:

source ~/.bash_profile

但是,在安装之前mysqlclient,您需要接受 XcodeBuild 许可证:

sudo xcodebuild -license

按照他们的指示签署您的家人同意书,之后您应该能够mysqlclient顺利安装:

pip install mysqlclient

安装完成后,您还必须做一件事来修复 MySQL 附带的运行时错误(未找到动态库libmysqlclient.dylib),方法是将此行添加到系统动态库路径中:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/:$DYLD_LIBRARY_PATH

解决方案 8:

brew install mysql已将 mysql 添加到/usr/local/Cellar/...,所以我需要将其添加:/usr/local/Cellar/到我的$PATH,然后就which mysql_config可以了!

解决方案 9:

我遇到的问题是我在 python 虚拟环境中运行该命令,虽然我已将其放在 .bash_profile 文件中,但它没有/usr/local/mysql/bin的路径。只需在虚拟环境中导出路径即可。

供您参考,sql_config 位于 bin 目录中。

解决方案 10:

安装 brew 或 apt-get 对我来说也不容易,所以我通过https://dev.mysql.com/downloads/connector/python/下载了 mysql ,并安装了它。所以我可以在这个目录中找到 mysql_config:/usr/local/mysql/bin

下一步是:

  1. 导出 PATH=$PATH:/usr/local/mysql/bin

  2. pip 安装 MySQL-python==1.2.5

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   2482  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1533  
  PLM(产品生命周期管理)项目对于企业优化产品研发流程、提升产品质量以及增强市场竞争力具有至关重要的意义。然而,在项目推进过程中,范围蔓延是一个常见且棘手的问题,它可能导致项目进度延迟、成本超支以及质量下降等一系列不良后果。因此,有效避免PLM项目范围蔓延成为项目成功的关键因素之一。以下将详细阐述三大管控策略,助力企业...
plm系统   0  
  PLM(产品生命周期管理)项目管理在企业产品研发与管理过程中扮演着至关重要的角色。随着市场竞争的加剧和产品复杂度的提升,PLM项目面临着诸多风险。准确量化风险优先级并采取有效措施应对,是确保项目成功的关键。五维评估矩阵作为一种有效的风险评估工具,能帮助项目管理者全面、系统地评估风险,为决策提供有力支持。五维评估矩阵概述...
免费plm软件   0  
  引言PLM(产品生命周期管理)开发流程对于企业产品的全生命周期管控至关重要。它涵盖了从产品概念设计到退役的各个阶段,直接影响着产品质量、开发周期以及企业的市场竞争力。在当今快速发展的科技环境下,客户对产品质量的要求日益提高,市场竞争也愈发激烈,这就使得优化PLM开发流程成为企业的必然选择。缺陷管理工具和六西格玛方法作为...
plm产品全生命周期管理   0  
热门文章
项目管理软件有哪些?
曾咪二维码

扫码咨询,免费领取项目管理大礼包!

云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用