Установка MySQLdb для Python 2.6 на OSX

Я пытаюсь установить MySQLdb для Python 2.6 в соответствии с этими инструкциями:

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

Что я делаю неправильно?

Ответ 1

Он не ищет "mysql", он ищет "mysql_config". Попробуйте запустить 'which mysql_config' из bash. Вероятно, он не будет найден. Вот почему сборка не находит его. Попробуйте запустить "найти mysql_config" и посмотреть, не вернется ли что-нибудь. Путь к этому двоичному файлу должен быть либо в переменной оболочки оболочки PATH, либо в файле setup.py должен быть явно указан модуль, предполагающий, что он смотрит в определенном месте для этого файла.

Если вы установили mysql из источника в /usr/local, я считаю, что файл будет найден в/usr/local/mysql/bin/mysql_config

Ответ 2

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

должен исправить эту проблему, поскольку система не может найти файл mysql_config.

Ответ 3

Хотя PlanetUnknown находится на правильном пути с его/ее ответом, я надеюсь, что этот более явный набор шагов окажется полезным:

Проблема связана с MySQLdb, не зная, где искать файл mysql_config.

Итак, найдем его для MySQLdb, а затем поместите его в файл site.cfg, чтобы он мог найти его с этого момента.

OP находится на 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

Сохраните файл.

Теперь он должен быть готов к запуску, поэтому попробуйте еще раз.

Ответ 4

проверьте файл site.cfg в вашей папке mysqldb. Это должно быть в корне.
Измените site.cfg на правильный путь "mysql_config"
Я нашел мой в "/usr/local/mysql/bin/"

После выполнения вы сможете запустить сборку и установить без каких-либо проблем.
Помните, что вы должны быть root или запускать все команды как "sudo"