Для установки MySQL из исходного кода необходимо выполнить следующие основные команды:
shell> groupadd mysql shell> useradd -g mysql mysql shell> gunzip < mysql-VERSION.tar.gz | tar -xvf - shell> cd mysql-VERSION shell> ./configure --prefix=/usr/local/mysql shell> make shell> make install shell> scripts/mysql_install_db shell> chown -R root /usr/local/mysql shell> chown -R mysql /usr/local/mysql/var shell> chgrp -R mysql /usr/local/mysql shell> cp support-files/my-medium.cnf /etc/my.cnf shell> /usr/local/mysql/bin/safe_mysqld --user=mysql & или shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &
если запускается версия MySQL 4.x.
Чтобы обеспечить поддержку таблиц InnoDB, следует отредактировать файл
/etc/my.cnf, удалив символ # перед теми параметрами, которые начинаются с
innodb_.... See Раздел 4.1.2, «Файлы параметров my.cnf». See Раздел 7.5.2, «Параметры запуска InnoDB».
Если вы используете исходный код RPM, выполните следующую команду:
shell> rpm --rebuild --clean MySQL-VERSION.src.rpm
Эта команда создаст бинарный код RPM, который вы можете установить.
Новых пользователей можно добавить, используя скрипт
bin/mysql_setpermission, если установить модули Perl DBI и
Msql-Mysql-modules.
Ниже следует более подробное описание установки.
Для установки исходного кода нужно выполнить приведенные ниже действия, а затем перейти к разделу Раздел 2.4, «Послеустановочные настройка и тестирование» для инициализации и послеустановочной проверки:
-
Выберите каталог, в котором вы хотите распаковать дистрибутив, и откройте его.
Получите файл дистрибутива с одного из сайтов, перечисленных в разделе See Раздел 2.2.1, «Как получить MySQL».
Если вы заинтересованы в том, чтобы использовать с MySQL таблицы Berkeley DB, то необходимо получить версию исходного кода таблиц Berkeley DB с патчами. Кроме того, прежде чем предпринимать какие-либо действия, ознакомьтесь, пожалуйста, с разделом, посвященным таблицам Berkeley DB (see Раздел 7.6, «Таблицы
BDBили BerkeleyDB»). Дистрибутивы исходного кода MySQL поставляются в виде сжатых архивов tar с именами наподобиеmysql-VERSION.tar.gz, гдеVERSIONпредставляет собой число.-
Добавьте пользователя и группу для запуска
mysqldследующим образом:shell> groupadd mysql shell> useradd -g mysql mysql
Эти команды добавляют группу
mysqlи пользователяmysql. Данный синтаксис дляuseraddиgroupaddв различных версиях Unix может иметь некоторые отличия. Приведенные выше команды могут также иметь другие названия -adduserиaddgroupсоответственно. Пользователю и группе можно назначить какие-нибудь иные, отличные отmysqlимена. -
Распакуйте дистрибутив в текущем каталоге:
shell> gunzip < /path/to/mysql-VERSION.tar.gz | tar xvf -
Эта команда создает каталог с именем
mysql-VERSION. -
Перейдите из каталога распакованного дистрибутива в каталог высшего уровня:
shell> cd mysql-VERSION
Учтите, что теперь необходимо конфигурировать и компоновать MySQL из этого каталога высшего уровня. Построить MySQL в другом каталоге нельзя.
-
Сформируйте релиз и скомпилируйте весь код:
shell> ./configure --prefix=/usr/local/mysql shell> make
При запуске configure вам, возможно, понадобится указать некоторые опции. Чтобы получить список опций, запустите
./configure --help. Некоторые наиболее полезные опции рассмотрены в разделе See Раздел 2.3.3, «Типичные опцииconfigure». Еслиconfigureне работает и вы собираетесь посылать письмо с просьбой о помощи на<[email protected]>, то просьба включить в него те строки изconfig.log, которые, по вашему мнению, могут помочь решить данную проблему. Кроме того, если выполнениеconfigureпреждевременно прекращается, в письмо следует включить несколько последних строк вывода изconfigure. Для отсылки отчета об ошибке используйте скриптmysqlbug(see Раздел 1.8.1.3, «Как отправлять отчеты об ошибках или проблемах»). Если компиляция не выполняется, то обращайтесь к разделу See Раздел 2.3.5, «Проблемы с компиляцией?», в котором содержатся рекомендации по решению ряда часто встречающихся проблем. -
Установите весь код:
shell> make install
Возможно, необходимо запустить эту команду как
root. -
Создайте таблицы привилегий MySQL (это необходимо только в случае, если нет ранее установленной версии MySQL ):
shell> scripts/mysql_install_db
Учтите, что в версиях MySQL до 3.22.10 работа сервера MySQL начиналась при запуске
mysql_install_db. Сейчас это не так! -
Измените принадлежность бинарного кода
rootи принадлежность каталога данных, назначив их пользователю, под именем которого будет запускатьсяmysqld. Это делается следующим образом:shell> chown -R root /usr/local/mysql shell> chown -R mysql /usr/local/mysql/var shell> chgrp -R mysql /usr/local/mysql
Первая команда изменяет атрибут owner данного файла на пользователя
root, вторая - атрибут owner каталога данных на пользователяmysql, а третья - атрибут group на группуmysql. Если вы хотите установить поддержку интерфейса Perl
DBI/DBD, обращайтесь к разделу See Раздел 2.7, «Замечания по установке Perl».Если вы хотели бы, чтобы работа MySQL начиналась автоматически при начальной загрузке компьютера, то можно скопировать
support-files/mysql.serverв то место, где находятся файлы запуска вашей системы. Более подробную информацию можно найти в самом скриптеsupport-files/mysql.serverи в разделе See Раздел 2.4.3, «Автоматический запуск и остановка MySQL».
После завершения установки данный дистрибутив необходимо проинициализировать и протестировать:
shell> /usr/local/mysql/bin/safe_mysqld --user=mysql &
Если эта команда прекращает работу немедленно после останова демона
mysqld, то некоторую информацию можно найти в файле
mysql-data-directory/'hostname'.err. Причина, возможно, заключается в том,
что уже запущен другой сервер mysqld (see Раздел 4.1.4, «Запуск нескольких серверов MySQL на одном компьютере»).
Теперь приступайте к разделу See Раздел 2.4, «Послеустановочные настройка и тестирование».