在OSX上为Python 2.6安装MySQLdb

17 投票
4 回答
20101 浏览
提问于 2025-04-16 05:16

我正在按照这些说明为Python 2.6安装MySQLdb:

http://www.tutorialspoint.com/python/python_database_access.htm

当我到达这一步:$ python setup.py build时,出现了错误:

users-MacBook-Pro:MySQL-python-1.2.3 user$ sudo python setup.py build
sh: mysql_config: command not found
Traceback (most recent call last):
  File "setup.py", line 15, in 
    metadata, options = get_config()
  File "/my_crawler/MySQL-python-1.2.3/setup_posix.py", line 43, in get_config
    libs = mysql_config("libs_r")
  File "/my_crawler/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,并且将它添加到了我的bash中。

我哪里做错了?

4 个回答

14

虽然PlanetUnknown的回答方向是对的,但我希望这组更明确的步骤能对你有帮助:

问题出在MySQLdb不知道去哪里找mysql_config文件。

所以,我们先找到MySQLdb需要的mysql_config文件,然后把这个位置放到它的site.cfg文件里,这样以后它就能找到这个文件了。

因为提问者是在Mac上,所以打开终端,找到site.cfg文件:

sudo find / -name 'site.cfg'

等几秒钟,它应该会显示出绝对路径,稍后我们会用vi来编辑这个文件。但首先,找到mysql_config文件:

sudo find / -name 'mysql_config'

在编辑site.cfg文件之前,确保你已经把mysql_config的路径复制到剪贴板上。

当你在编辑器中打开site.cfg后,找到指定mysql_config路径的那一行。它可能指向了错误的路径,或者干脆被注释掉了。不管怎样,把你剪贴板上正确的路径粘贴到原来的位置上。

现在你应该在那个文件里看到类似这样的行:

mysql_config = /usr/local/path/to/mysql_config

保存这个文件。

现在应该可以运行了,试试看吧。

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

这个应该能解决你的问题,因为系统找不到mysql_config这个文件。

9

它不是在找'mysql',而是在找'mysql_config'。你可以在bash里运行'which mysql_config'来看看。可能找不到这个文件。这就是为什么构建的时候也找不到它。你可以试着运行'locate mysql_config',看看有没有结果。这个文件的路径要么在你shell的$PATH环境变量里,要么需要在模块的setup.py文件里明确指定,因为它可能在某个特定的位置寻找这个文件。

如果你是从源代码安装mysql到/usr/local的话,我认为这个文件会在/usr/local/mysql/bin/mysql_config这个位置。

撰写回答