Инсталляция MySQL на AIX 5L

В этом цикле статей описывается использование ПО с открытым исходным кодом на платформах IBM®. Автор описывает применение MySQL на серверах AIX 5L, в том числе процедуры и параметры, которые должны быть настроены для развертывания популярной базы данных MySQL на сервере AIX 5L при помощи IBM VisualAge® C++.

Введение

Программное обеспечение Open Source – это концепция, время которой наконец-то пришло. Несмотря на прогнозы противников данной концепции, она успешно претворяется в жизнь вот уже более 20 лет. IBM® – это лидер индустрии, который активно сотрудничает с сообществом ПО с открытым исходным кодом. Еще в середине июня 1998 г. IBM включила web-сервер Apache с открытым исходным кодом в свой пакет WebSphere®. С тех пор поддержка компанией IBM ПО Open Source c открытым исходным кодом значительно возросла. Например, IBM участвовала в доработке ядра Linux, чтобы сделать его одной из основных ОС в старших моделях своих серверов pSeries® eServers.

История

В середине 1995 г. Михаэль "Monty" Видениус (Michael "Monty" Widenius) и Дэвид Аксмарк (David Axmark) разработали MySQL для внутреннего использования. Они нуждались в нетребовательном к ресурсам решении, которое обеспечило бы доступ к их данным через Интернет, однако в то время на рынке не было подходящих под их требования продуктов. После завершения своего проекта они осознали его ценность и предоставили его исходный код сообществу open source для того чтобы их разработкой могли воспользоваться другие программисты. Начало использования MySQL относится к 1998 г., когда интернет был "на взлете", и веб-разработчикам понадобился доступ к своим данным. Тогда MySQL оказался очень кстати.

Первоначальной задачей создателей MySQL было создание дешевого решения для управления данными, доступного для любого участника сообщества open source. Это решение должно было быть нетребовательным к ресурсам и оптимизировано под Web-приложения. Сегодня MySQL является наиболее популярной и широко используемой базой данных в сообществе open source (четыре миллиона пользователей по всему миру), включая несколько корпораций из списка Fortune 500. Дополнительную информацию и исходные коды /или исполняемые файлы можно получить по адресу http://www.mysql.com.

   

Системные требования

В таблице приведены характеристики системы, необходимые для работы СУБД MySQL.

Операционная система AIX® 5.2 или выше
Компилятор IBM VisualAge® 6.0 или новейший компилятор GNU
MySQL 4.0.21
Make GNU Make

   

Загрузка MySQL

Исполняемые файлы и исходные коды доступны для загрузки на странице http://www.mysql.com/downloads/. Они распространяются в формате gzip tar.

Исполняемые файлы

Для загрузки исполняемых файлов можно использовать либо загрузку из трех этапов, либо загрузку по ссылке.

Загрузка из трех этапов

  1. Нужно загрузить файл MySQLVERSION.tar.gz в каталог, в котором разрешается создавать файлы и подкаталоги. VERSION представляет собой версию используемой операционной системы (например AIX 5.2) и версию (стандартная или отладочная) загружаемого дистрибутива. Если не планируется проведение отладки кода и поиска ошибок, то следует загружать стандартную версию.
  2. Выполнить gunzip для MySQLVERSION.tar.gz. На этом шаге создается файл MySQLVERSION.tar.
  3. Выполнить команду tar ?xvf MySQLVERSION.tar.gz. На этом шаге будет выполнено извлечение исполняемых файлов в каталог PREFERRED LOCATION/bin, библиотек в каталог PREFERRED LOCATION/lib, где PREFERRED LOCATION был определен на этапе 1.

Загрузка по ссылке

  1. Загрузить файл MySQLVERSION.tar.gz в каталог, в котором разрешается создавать файлы и подкаталоги. VERSION представляет версию используемой операционной системы (например AIX 5.2) и версию (стандартная или отладочная) загружаемого дистрибутива. Если не планируется проведение отладки кода и поиска ошибок, то следует загружать стандартную версию.
  2. Выполнить команду gunzip MySQLVERSION.tar.gz | tar ?xvf -.

Процедуры инсталляции

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

В шаге 1 из файла README требуется создать пользователей и группу MySQL. Команда для выполнения этой задачи в ОС AIX:

> mkuser mysql		    	(создает пользователя MySQL)
> mkgroup adms=mysql mysql (создает группу MySQL и добавляет в нее пользователя MySQL)

Для конфигурирования исполняемых файлов MySQL необходимо выполнить шаг 2 из README.

Исходный код

Если программист решил пойти своим путем и самостоятельно создать исполняемые файлы, то, как минимум, необходимо вызвать конфигурационную утилиту для компилирования исходного кода с параметрами, перечисленными ниже. С компилятором VisualAge C++ Compiler 6.0 нужно использовать следующие опции сборки. Параметры можно найти на сайте MySQL в примечаниях к платформе IBM/AIX.

export CC="xlc_r -ma -O3 -qstrict -qoptimize=3 -qmaxmem=8192 "
export CXX="xlC_r -ma -O3 -qstrict -qoptimize=3 -qmaxmem=8192"
export CFLAGS="-I /usr/local/include"
export LDFLAGS=-L/usr/local/lib
export CPPFLAGS=$CFLAGS
export CXXFLAGS=$CFLAGS

./configure --prefix=/usr/local
--localstatedir=/var/mysql
--sysconfdir=/etc/mysql
--sbindir='/usr/local/bin'
--libexecdir='/usr/local/bin'
--enable-thread-safe-client
--enable-large-files

Чтобы получить краткое описание каждого параметра, следует выполнить команду configure с флагом справки:

./configure –help

   

Управление вводом/выводом AIX для повышения производительности

Оценка необходимой пропускной способности ввода/вывода – сложная задача, которую необходимо выполнить при создании любой сложной базы данных. От того, насколько эффективно распределяются запросы ввода/вывода с дисков между несколькими дисковыми приводами и контроллерами, зависит скорость доступа к данным, записанным на дисках.

Разделение ограниченного дискового пространства между индексами и таблицами определяет их поведение в различных ситуациях. Чтобы увеличить производительность AIX для ресурсоемких транзакций MySQL следует использовать конфигурацию со страйпингом (распределением между несколькими дисками). Для конфигурирования в ОС AIX используется Менеджер Логических Томов (Logical Volume Manager, LVM).

В своей простейшей форме при страйпинге данные разбиваются на логические блоки (размер блока настраивается через LVM). Затем эти блоки параллельно записываются на отдельные физические тома по кругу (по алгоритму round-robin ) до тех пор, пока все данные не будут записаны на диски. При чтении эти блоки читаются с физических томов аналогичным образом.

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

Чтобы создать логический том с распределением данных, необходимо использовать опцию -S с командой mklv или выполнить smit mklv, не забыв присвоить опции striped size нужное значение размера "нарезки" (128, 64, 32, 16, 8 или 4 K).

   

Заключение

Сообщество open source значительно расширилось всего за несколько лет и теперь предоставляет разработчикам коды различных приложений. MySQL начинала свой путь как очередное решение с открытым исходным кодом, которое распространялось с условием "as is" ("как есть"). Теперь MySQL – наиболее популярная система управления реляционными базами данных с открытым исходным кодом; на счету системы ужеимеется более пяти миллионов инсталляций, и это число продолжает расти.

Вместе с подробными инструкциями по установке MySQL на ОС AIX эта статья содержит пример конфигурации AIX / MySQL, которая поможет повысить производительность базы данных.

Оставьте комментарий