mysql-python安装时EnvironmentError: mysql_config not found
在安装 mysql-python时,会出现:
sh: mysql_config: not found
Traceback (most recent call last):
File "setup.py", line 15, in <module>
metadata, options = get_config()
File "/home/zhxia/apps/source/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
libs = mysql_config("libs_r")
File "/home/zhxia/apps/source/MySQL-python-1.2.3/setup_posix.py", line 24, in mysql_config
raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found
MySQL for Python library在Python中也就相当于JAVA中对应MySQL的JDBC Driver
1. 首先安装mysql
sudo apt-get install mysql-server
2. 安装mysql-python
下载MySQL-python-1.2.3.tar.gz(见附件),解压到指定目录。
到解压后的MySQL-python-1.2.3目录下编译配置MySQL-python:
python setup.py build
此时系统报错:EnvironmentError: mysql_config not found
很明显没有mysql_config这个文件
执行find / -name mysql_config,没有任何数据,表明系统中没有mysql_config这个文件
网上有人解释说使用apt-get安装的MySQL是没有mysql_config这个文件的
解决办法:
(1)ubuntu下
执行sudo apt-get install libmysqld-dev
(2)fedora下
执行 sudo yum install python-devel
若出现:my_config.h:没有那个文件或目录,就执行:sudo yum install mysql-devel
注意:yum也是python写的,默认是调用/usr/bin/python的,这是系统本身自带的python,自己安装的一般在/usr/local/bin/python,所以最好别把系统自带的python给卸载掉了,自己下载的python没有yum模块。
此时执行 find / -name mysql_config 在/usr/bin/下发现了这个文件
然后修改MySQL-python-1.2.3目录下的site.cfg文件
去掉mysql_cnotallow=XXX这行的注释,并改成mysql_cnotallow=/usr/bin/mysql_config(以mysql_config文件所在机器上的目录为准)
执行下面命令,此时可以成功编译安装了:
python setup.py build
python setup.py install
http://zhoujianghai.iteye.com/blog/1520666
----------------------------------------------------------
mysql 官方有一个mysql.connector
安装这个即可
---------------------------------------------------
只要原因是没有安装:libmysqlclient-dev
sudo apt-get install libmysqlclient-dev
找到mysql_config文件的路径
sudo updatedb
locate mysql_config
mysql_config的位置为:/usr/bin/mysql_config
在mysql-python源码包下找到:setup_posix.py 文件,然后找到文件中的 mysql_config.path 将其值改为:/usr/bin/mysql_config,然后 sudo python setup.py install ,就ok了