Как мне установить MySQL и пакет Python MySQL на OS X Leopard? Или как мне узнать, как стать веб-разработчиком, использующим OS X? - PullRequest
6 голосов
/ 28 декабря 2008

Я новичок в Mac OS X и почти готов выбросить свой совершенно новый MacBook Pro в окно. Каждый учебник по настройке среды разработки Django на Mac OS X Leopard коварно ошибочен. Все они пропускают один шаг, или предполагают, что вы настроили что-то в одном направлении, или просто предполагаете, что я знаю одну вещь, которую я не должен.

Я очень хорошо знаком с тем, как настроить среду в Ubuntu / Linux, и единственная часть, в которой я застрял с OS X , - это как установить MySQL, запустить его автоматически и установить Привязки Python MySQL. Я думаю, что моя ошибка заключалась в использовании мешанины инструментов, которые я не до конца понимаю; Я использовал fink для установки MySQL и его библиотек разработки, а затем попытался построить привязки Python-MySQL из исходного кода (но они не будут собираться).

UPDATE: Я установил двоичный пакет MySQL из http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg,, и у меня запущен сервер MySQL (доступ с правами администратора) Версия MySQL, которую я получил из порта, была мусором, я не мог заставить его работать вообще.

Я изменил исходный код пакета Python-MySQL в соответствии с выбранным ответом, но все еще получал ошибки компиляции, которые я перечислил в комментариях. Я смог исправить это, добавив / usr / local / mysql / bin / к моему пути в файле "~ / .profile". " PATH = / USR / местные / MySQL / бен: $ PATH «

Спасибо за помощь, я очень настороженно относился к редактированию исходного кода, так как эта операция была очень простой в Ubuntu, но я буду более склонен попробовать это в будущем. Я действительно скучаю по команде apt-get в Ubuntu; иногда это делает жизнь очень легкой и простой. У меня уже есть образ Ubuntu VMware , работающий на моем Mac, поэтому я всегда могу использовать его как запасной вариант (плюс он более точно соответствует моим рабочим машинам, поэтому должна быть хорошей тестовой средой для отладки производственных проблем.)

Ответы [ 7 ]

12 голосов
/ 28 декабря 2008

Произошли ли установки MySQL и MySQL-dev гладко? Можете ли вы запустить MySQL, подключиться к нему и так далее? /usr/local/mysql/include содержит много заголовочных файлов? (У меня там 46 файлов заголовков для справки).

Если это так, MySQL должен быть в порядке. Однако для компиляции MySQL-python все еще необходимо выполнить несколько шагов вручную.

Это - достойное руководство: я включил следующие важные шаги.


  1. Загрузить исходный код MySQL-python (v1.2.2 на момент написания: все последующие инструкции относятся к этой версии)

    $ tar xzf MySQL-python-1.2.2.tar.gz && cd MySQL-python-1.2.2
    
  2. Редактировать _mysql.c: удалить строки 37-39 и изменить строки 481-482. Вот разница:

    37,39d36
    < #ifndef uint
    < #define uint unsigned int
    < #endif
    484,485c481,482
    <         uint port = MYSQL_PORT;
    <         uint client_flag = 0;
    ---
    >         unsigned int port = MYSQL_PORT;
    >         unsigned int client_flag = 0;
    
  3. Символическая ссылка на библиотеки, где MySQL-python ожидает их:

    $ sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql
    
  4. В вашем каталоге MySQL-python-1.2.2 пересоберите пакет:

    $ sudo python setup.py build
    

    Примечание: Вы получите предупреждение, игнорируйте его.

  5. Установить пакет:

    $ sudo python setup.py install
    

Что касается запуска MySQL, есть инструкции здесь по запуску его как службы. Лично я просто запускаю

sudo mysqld_safe 

вручную, добавив фоновые значения для ^Z и bg, как только я введу свой пароль.

2 голосов
/ 28 декабря 2008

Предполагая, что это всего лишь среда разработки, вы можете попробовать использовать SQLite 3 в качестве базы данных. Пробег может варьироваться в зависимости от того, насколько низкоуровневый вам нужно получить базу данных для вашего конкретного приложения.

2 голосов
/ 28 декабря 2008

Вы можете использовать BSD-подобный (?) http://macports.org,, который обеспечивает gentoo-like build-it-self установки широкого спектра программ, которые вы ожидаете найти в дистрибутиве Linux.

В качестве альтернативы вы можете просто запустить Ubuntu на виртуальной машине в качестве этапа тестирования.

Честно говоря, просто

# port install <pkgname>

0 голосов
/ 29 декабря 2008

Установить MacPorts . Запустите port install mysql. У меня это сработало!

0 голосов
/ 28 декабря 2008

Если вы пользователь Mac, установите MacPorts . Практически любое приложение Linux / Unix доступно через «порт». Это просто и легко управлять.

0 голосов
/ 28 декабря 2008

Я поместил пошаговое руководство в блоге, которое может помочь: Установка Django с MySQL на Mac OS X .

0 голосов
/ 28 декабря 2008

Python mysqldb packge в fink , но в нестабильном дереве. Просто включите нестабильное дерево , и вы сможете его установить.

Или, если у вас есть два альтернативных менеджера пакетов, это также в MacPorts .

У меня тоже были проблемы в прошлый раз, когда мне пришлось это сделать, и в итоге я выбрал версию fink и сэкономил много головной боли.

...