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

950 投票
24 回答
697690 浏览
提问于 2025-04-16 12:54

这是我遇到的错误

(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

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

24 个回答

109

对于上面提到的问题,可能有很多不同的解决办法,下面是一个汇总的解决方案。

如果你使用的是Ubuntu系统:

$ sudo apt update
$ sudo apt install python-dev
$ sudo apt install python-MySQLdb

如果你使用的是CentOS系统:

$ yum install python-devel mysql-devel
324

在Mac OS上,我只需在终端里运行这个命令就能解决问题:

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

这是我找到的最快的解决办法——它会把这个添加到路径里。不过,如果你打算在其他环境中安装MySQL-python,最好还是永久性地添加它(也就是说,把它加到 /etc/paths 里)。

(在OSX Mountain Lion上测试过)

1602

看起来你的系统上缺少mysql_config,或者安装程序找不到它。请确保mysql_config确实已经安装。

比如在Debian/Ubuntu系统上,你需要安装这个软件包:

sudo apt-get install libmysqlclient-dev

可能mysql_config不在你的路径中,这种情况通常发生在你自己编译mysql软件的时候。

更新:对于最近版本的Debian/Ubuntu(截至2018年),你需要:

sudo apt install default-libmysqlclient-dev

撰写回答