我试图让一个Python脚本在我通过ssh连接到的linux服务器上运行。脚本使用mysqldb。我有我需要的所有其他组件,但当我试图通过setuptools安装mySQLdb,像这样:
python setup.py install
我得到以下与mysql_config命令相关的错误报告。
sh: mysql_config: command not found
Traceback (most recent call last):
File "setup.py", line 15, in <module>
metadata, options = get_config()
File "/usr/lib/python2.5/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
libs = mysql_config("libs_r")
File "/usr/lib/python2.5/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
有没有其他人遇到过这个错误,如果是的话,你是如何解决的/我能做什么才能成功安装mysqldb?
mySQLdb是mysql的python接口,但它不是mysql本身。显然mySQLdb需要'mysql_config'命令,所以你需要先安装它。
你能确认你是否安装了mysql本身,通过运行“mysql”从shell?这应该给你一个响应,而不是“mysql:命令未找到”。
你用的是哪个linux发行版?Mysql是为大多数linux发行版预先打包的。例如,对于debian / ubuntu,安装mysql非常简单
sudo apt-get install mysql-server
Mysql-config在一个不同的包中,可以从(同样,假设debian / ubuntu)安装:
sudo apt-get install libmysqlclient-dev
如果你使用的是mariadb,将mysql替换掉,然后运行
sudo apt-get install libmariadbclient-dev
参考:
https://github.com/JudgeGirl/Judge-sender/issues/4#issuecomment-186542797
使用apt-get install python-mysqldb
Python 2.5吗?听起来你使用的是一个非常旧的Ubuntu服务器(Hardy 8.04?) -请确认服务器使用的Linux版本。
Python-mysql搜索ubuntu包数据库
一些附加信息:
来自mysql-python -的README
红帽Linux
.............
MySQL-python是在Red Hat Linux 7中预先打包的。X和更新的。这
包括Fedora核心和红帽企业Linux。你也可以
按照上面的描述构建自己的RPM包。
Debian GNU/Linux
................
打包为python-mysqldb_::
# apt-get install python-mysqldb
或者使用Synaptic。
…_python-mysqldb: http://packages.debian.org/python-mysqldb
Ubuntu
......
和Debian一样。
脚注:如果你使用的是比Ubuntu 10.04更老的服务器,那么你已经不受官方支持了,应该尽早升级。