pip安装mysql-python失败,显示环境错误:未找到mysql_config。

944

这是我遇到的错误

(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
  Downloading MySQL-python-1.2.3.tar.gz (70Kb): 70Kb downloaded
  Running setup.py egg_info for package mysql-python
    sh: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 24, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found
    Complete output from command python setup.py egg_info:
    sh: mysql_config: not found

Traceback (most recent call last):

  File "<string>", line 14, in <module>

  File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>

    metadata, options = get_config()

  File "setup_posix.py", line 43, in get_config

    libs = mysql_config("libs_r")

  File "setup_posix.py", line 24, in mysql_config

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

EnvironmentError: mysql_config not found

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log
(mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install mysql-python
Downloading/unpacking mysql-python
  Running setup.py egg_info for package mysql-python
    sh: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 24, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found
    Complete output from command python setup.py egg_info:
    sh: mysql_config: not found

Traceback (most recent call last):

  File "<string>", line 14, in <module>

  File "/home/zjm1126/zjm_test/mysite/build/mysql-python/setup.py", line 15, in <module>

    metadata, options = get_config()

  File "setup_posix.py", line 43, in get_config

    libs = mysql_config("libs_r")

  File "setup_posix.py", line 24, in mysql_config

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

EnvironmentError: mysql_config not found

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /home/zjm1126/.pip/pip.log

我该怎么做才能解决这个问题?


2
请见此讨论:安装mysqldb python接口时找不到mysql_config 这对我有用 :) - Staccato
2
我是 MAC OS 用户 我通过这个问题得到解决 https://dev59.com/O-k5XIcBkEYKwwoY7eME - PatricioS
24个回答

1

如果您在虚拟环境中安装了MySQL-python,请检查pip版本,如果版本早于9.0.1,请更新它。

pip install --upgrade pip

1
请参考此链接 https://dev59.com/Qms05IYBdhLWcg3wD9wB,我认为你的回答并不能提供帮助。 - Linus

1

在我的情况下,我的数据库运行在一个容器上,而我的Flask应用程序运行在另一个容器上,当我尝试更新代码时,应用程序出现了错误。

   Complete output from command python setup.py egg_info:
/bin/sh: 1: mysql_config: not found
/bin/sh: 1: mariadb_config: not found
/bin/sh: 1: mysql_config: not found
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/pip-build-bya8e734/mysqlclient/setup.py", line 15, in <module>
    metadata, options = get_config()
  File "/tmp/pip-build-bya8e734/mysqlclient/setup_posix.py", line 65, in get_config
    libs = mysql_config("libs")
  File "/tmp/pip-build-bya8e734/mysqlclient/setup_posix.py", line 31, in mysql_config
    raise OSError("{} not found".format(_mysql_config_path))
OSError: mysql_config not found

堆栈跟踪中的关键字是

/bin/sh: 1: mysql_config: not found

由于我的Flask应用程序运行的位置没有正确配置MySQL客户端,因此我首先安装了MySQL服务器然后进行了安装。

sudo apt-get install mysql-server-5.7 -y

然后启动MySQL

mansoor@LARC-mansur:~/Documents/clients/HR/DevopsSimulator/web$ sudo systemctl start mysql

然后安装flask-mysql包,这次它成功了。
mansoor@LARC-mansur:~/Documents/clients/HR/DevopsSimulator/web$ sudo pip3 install flask-mysqldb

这是不同的情况,但在此发布,因为可能有其他人在世界上面临相同的问题


1

你的sudo路径不知道你的本地路径... 进入超级用户模式,添加路径,然后从那里安装。

sudo su
export PATH=$PATH:/usr/local/mysql/bin/
pip install mysql-python
exit

现在您已经在OSX上开始运行了。现在您拥有一个更新的全局Python。


0
在MacOS Mojave上,mysql_config位于/usr/local/bin/而不是上面提到的/usr/local/mysql/bin,因此无需将任何内容添加到路径中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接