Среда web-разработки на Mac OS X Leopard (часть 1)

Теперича я постараюсь подробно описать процесс сборки и инициализации баз данных MySQL и PostgreSQL для платформе Mac OS X. Начальные шаги для подготовки системы к сборке описаны на этом месте, так что если вы не выполнили описанных спустя некоторое время шагов, вряд ли что-то получится.

Итак, приступим:

Логотип MySQL Логотип PostgreSQL


Сборочка MySQL

Начнём мы с MySQL. В моём примере будет рассматриваться монтаж версии 5.1.39 (последняя в ветке 5.1 на сегодняшний куртаг), но принцип одинаков и для других версий. Также так и подмывает отметить, что в моих примерах сервер MySQL будет установлен в директорию /usr/local, и всё-таки команды приведены с учётом этого пути, так что благо вы решите устанавливать сервер в другую директорию, изменяйте предложенные в примерах команды в соответствии с необходимыми вас путями.
Чтобы начать, необходимо скачать исходники MySQL нужной вас версии. Для этого нужно зайти на эту страницу, и в разделе «Sources» присмотреть для скачивания один из пакетов. Распакуйте исходники изо архива: это можно сделать при помощи встроенного в Leopard инструмента чтобы работы с архивами (просто кликните по архиву два раза). Пока что переходим к сборке. Откройте Terminal и перейдите в директорию с исходниками. Следом список команд, которые необходимо последовательно выполнить в терминале.

Интересах начала ознакомьтесь со списком конфигурационных параметров, которые оказывают интерференция на сборку сервера базы данных. Это можно предпринять, выполнив в терминале команду:

./configure —help

Вы увидите немалый перечень параметров с описанием того, на что они влияют. Кабы раньше вам приходилось иметь дело с MySQL, вы поймёте, в нежели дело. Если же нет, рекомендую подробнее почитать об этом сверху сайте MySQL. Я не буду задерживаться на параметрах, перейдём к конфигурации исходников чтобы последующей сборки. Лично я конфигурировал сервер со следующими опциями:

./configure —prefix=/usr/local/mysql-5.1.39 —enable-profiling —with-charset=utf8 —with-extra-charsets=all —with-plugins=all

Этими параметрами я указываю, камо именно я хочу установить сервер, а также включаю ряд опциональных параметров.
Задним числом того, как конфигурация успешно завершилась, запускаем компиляцию:

make

Запаситесь терпением, потому как выполнение этой команды займёт довольно много времени. Посе завершения компиляции, приходится выполнить команду установки от имени суперпользователя:

sudo make install

Даже если до этого всё было хорошо (очень на сие надеюсь), теперь у вас установлен сервер MySQL, и необходимо воплотить в жизнь пару шагов для завершения установки. Для начала запустите ото имени суперпользователя команду создания ссылки на директорию с сервером (в (видах удобства) и инициализации базы данных:

sudo ln -s /usr/local/mysql-5.1.39/ /usr/local/mysql && sudo /usr/local/mysql/bin/mysql_install_db

Об эту пору, если вы всё ещё находитесь в каталоге с исходниками (если только нет, перейдите туда или измените указанную ниже команду), выполните следующее применение:

sudo cp support-files/mysql.server /usr/local/mysql/ && sudo chmod 700 /usr/local/mysql/mysql.server

Тем самым ваш брат скопируете скрипт запуска сервера в каталог с установленным MySQL и дадите карт-бланш на его исполнение только владельцу файла (его автор этих строк изменим позже) либо суперпользователю.

Следующая команда установит пользователя mysql (симпатия присутствует в системе Mac OS X Leopard сразу после установки) владельцем всех файлов установленного сервера:

sudo chown -R mysql:mysql /usr/local/mysql-5.1.39

Смотри и всё, теперь осталось лишь запустить сервер. Для сего выполните команду:

sudo /usr/local/mysql/mysql.server start

На случай если после выполнения этой команды вы увидите на экране существительное SUCCESS, значит всё прошло успешно, сервер запустился. В надежде остановить сервер, замените параметр start в команде, данной ранее, на stop. Чтобы ознакомиться со всеми командами, доступными скрипту, запустите его за исключением. Ant. с аргументов, и он выведен на экран доступный для использования указатель параметров.

Сборка PostgreSQL

Непосредственно сборка этой базы данных маловато чем отличается от MySQL: всё те же ./configure, make и make install, а в зависимости от конфигурационных установок, вам может потребоваться регулирование дополнительных библиотек. Но обо всём по порядку.

Для того начала необходимо скачать исходники: взять коды нужной вы версии можно отсюда. В моих примерах будет рассматриваться восстановление. Ant. демонтаж версии 8.4.1, но принцип тот же и для других версий, — единственное, фигли нужно будет делать, в случае, если вы используете отличную с моих примеров версию, — указывать правильные пути к файлам. Подобно ((тому) как) и в случае с MySQL, описанном выше, устанавливать эту базу данных я буду в директорию /usr/local.
Распакуйте исходники, запустите терминальный символ и перейдите в появившуюся у вас директорию.

Список доступных конфигуратору опций вызывается командой

./configure —help

Ввиду я буду собирать базу с поддержкой XML и XSLT, мне потребуется книжное собрание libxml2, отсутствующая в Mac OS X Leopard (хотя, могу и ошибаться, возможно возлюбленная там есть, но довольно старая. В подробности не углублялся). Шелковичное) дерево-то и потребуется наличие у вас MacPorts, об установке которого я писал в вступлении. Для того, чтобы установить в систему эту библиотеку, должен в терминале выполить следующую команду:

sudo /opt/local/bin/port install libxml2

Спустя время чего в вашу систему будет автоматически установлен ряд библиотек (gperf, libiconv, zlib), необходимых исполнение) установки libxml2, а так же нужная нам библиотека.
Теперича приступаем к конфигурированию PostgreSQL

./configure —prefix=/usr/local/postgresql-8.4.1 —with-python —with-libxml —with-libxslt

Позднее копиляция (она тоже небыстрая) и установка в систему:

make && sudo make install

Пока что предстоит проделать ряд манипуляций с системными пользователями, чтобы настричь группу и пользователя, необходимых для работы PostgreSQL. В отличие с mysql, пользователь postgres в Leopard отсутствует. Его, конечно, имеется возможность создать при помощи пункта «Учётные записи» в Системных настройках, да тогда этот пользователь появится и в окне приглашения входа в систему, будто вам, уверен, совершенно ни к чему. А потому придётся поступать через консольную утилиту dscl — Directory Service command line utility. Целое команды, которые необходимо последовательно выполнить, я объединил в одну, скажем что для создания группы и пользователя с именем postgres, скопируйте указанную дальше команду и выполните её в терминале:

sudo dscl localhost -create /Local/Default/Groups/postgres PrimaryGroupID 123 && sudo dscl localhost -create /Local/Default/Groups/postgres RealName «PostgreSQL Users» && sudo dscl localhost -create /Local/Default/Users/postgres && sudo dscl localhost -create /Local/Default/Users/postgres RecordName postgres && sudo dscl localhost -create /Local/Default/Users/postgres UserShell /bin/sh && sudo dscl localhost -create /Local/Default/Users/postgres RealName «PostgreSQL Server» && sudo dscl localhost -create /Local/Default/Users/postgres UniqueID 123 && sudo dscl localhost -create /Local/Default/Users/postgres PrimaryGroupID 123 && sudo dscl localhost -create /Local/Default/Users/postgres NFSHomeDirectory /usr/local/pgsql

Поелику у вас появился пользователь postgres, необходимо назначить его владельцем свежеустановленного сервера PostgreSQL. Во (избежание этого выполните команду:

sudo chown -R postgres:postgres /usr/local/postgresql-8.4.1

Нонче необходимо инициировать создание начальной данных структуры для сервера и обратить серверу, где ему следует хранить данные. Сделать сие надо от имени созданного вами пользователя postgres, же чтоб по много раз не переключаться, воспользуемся встроенными средствами системы:

sudo su — postgres -c «/usr/local/postgresql-8.4.1/bin/initdb -D /usr/local/postgresql-8.4.1/data»

В данный момент завершающие шаги: сделайте симлинк на директорию с сервером (интересах удобства в будущем):

sudo ln -s /usr/local/postgresql-8.4.1 /usr/local/pgsql

И можете пускать свой сервер:

sudo su — postgres -c «/usr/local/pgsql/bin/pg_ctl start -D /usr/local/pgsql/data -l /usr/local/pgsql/logfile»

Так чтобы остановить сервер, достаточно выполнить команду

sudo su — postgres -c «/usr/local/pgsql/bin/pg_ctl stop -D /usr/local/pgsql/data -l /usr/local/pgsql/logfile»

Получи этом заканчивается первая часть: установка баз данных. Приношу извинения по (по грибы) задержку материалов. Дело в том, что я заболел, так что-нибудь сейчас мне немного не до компьютера. Остальные материалы опубликую за выздоровления.
Очень надеюсь, что у вас не возникнет проблем со сборкой данных пакетов. До настоящего времени вопросы и указания на ошибки в тексте, как всегда, можете выпускать в комментариях.

Среда web-разработки на Mac OS X Leopard (часть 1)