我试图让一个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
当我试图安装mysql-python时,我得到了同样的错误。
这就是我解决它的方法。
sudo PATH=/usr/local/mysql/bin/:$PATH pip install mysql-python
问题是安装程序无法在默认路径中找到mysql_config。现在可以了。而且奏效了。
15 warnings generated.
clang -bundle -undefined dynamic_lookup -Wl,-F. build/temp.macosx-10.8-intel-2.7/_mysql.o -L/usr/local/mysql/lib -lmysqlclient_r -lz -lm -lmygcc -o build/lib.macosx-10.8-intel-2.7/_mysql.so -arch x86_64
Successfully installed mysql-python
Cleaning up...
希望这能有所帮助。
谢谢。