FreeBSD: установка MariaDB
Я использовал MariaDB (версия MySQL, развиваемая независимыми от Oracle разработчиками) версии 5.2.3 и FreeBSD 8.1.
Скачиваем исходники, распаковываем. Я пользуюсь bash, в sh данная команда не будет работать корректно:
Тестируем:
Создаем группу mysql и пользователя mysql:
Я расположил директорию баз данных в /opt — так для меня удобнее:
В директории /usr/local/mysql/share/mysql можно найти образцы файлов конфигураций:
Как нетрудно догадаться, речь идет о количестве потребляемой MariaDB памяти. В данном топике углубляться в оптимизацию не будем.
Копируем:
Тестовый запуск сервера:
Отлично. В /opt/mysql/hostname.err видим:
Останавливаем:
Создаем скрипт mariadb в /etc/rc.d/. Данный скрипт необходим для правильного старта и остановки сервиса:
-u service означает пользователя (в MariaDB), от имени которого можно остановить MariaDB, -pпароль — соответственно пароль данного пользователя. Открываем консоль MariaDB (предварительно запустив сервис):
В консоли:
Меняем права на скрипт на 700:
Добавляем в /etc/rc.conf строку:
Старт сервиса будет осуществляться автоматически при запуске системы.
Запуск вручную:
/etc/rc.d/mariadb onestart
Остановка:
/etc/rc.d/mariadb onestop
Скачиваем исходники, распаковываем. Я пользуюсь bash, в sh данная команда не будет работать корректно:
CC=gcc CFLAGS="-O2 -fno-strength-reduce" CXX=gcc CXXFLAGS="-O2 -fno-rtti -fno-exceptions -felide-constructors -fno-strength-reduce" ./configure --prefix=/usr/local/mysql --enable-assembler
gmake
gmake install
Тестируем:
cd /usr/local/mysql/mysql-test ; perl mysql-test-run.pl
Создаем группу mysql и пользователя mysql:
pw groupadd mysql
pw useradd mysql -d /opt/mysql -s /usr/sbin/nologin -G mysql
Я расположил директорию баз данных в /opt — так для меня удобнее:
mkdir /opt
cd /usr/local/mysql
bin/mysql_install_db --user=mysql --datadir=/opt/mysql
В директории /usr/local/mysql/share/mysql можно найти образцы файлов конфигураций:
my-huge.cnf
my-innodb-heavy-4G.cnf
my-large.cnf
my-medium.cnf
my-small.cnf
Как нетрудно догадаться, речь идет о количестве потребляемой MariaDB памяти. В данном топике углубляться в оптимизацию не будем.
Копируем:
cp /usr/local/mysql/share/mysql/my-medium.cnf /opt/mysql/my.cnf
Тестовый запуск сервера:
/usr/local/mysql/bin/mysqld_safe --defaults-extra-file=/opt/mysql/my.cnf --user=mysql --datadir=/opt/mysql --pid-file=/opt/mysql/mysql.pid
101125 14:01:52 mysqld_safe Logging to '/opt/mysql/hostname.err'.
101125 14:01:52 mysqld_safe Starting mysqld daemon with databases from /opt/mysql
Отлично. В /opt/mysql/hostname.err видим:
101125 14:01:52 mysqld_safe Starting mysqld daemon with databases from /opt/mysql
101125 14:01:52 [Note] Event Scheduler: Loaded 0 events
101125 14:01:52 [Note] /usr/local/mysql/libexec/mysqld: ready for connections.
Version: '5.2.3-MariaDB-log' socket: '/tmp/mysql.sock' port: 3306 Source distribution
Останавливаем:
/usr/local/mysql/bin/mysqladmin -u root -p shutdown
Создаем скрипт mariadb в /etc/rc.d/. Данный скрипт необходим для правильного старта и остановки сервиса:
#!/bin/sh
# PROVIDE: mariadb
# REQUIRE: DAEMON
# KEYWORD: shutdown
. /etc/rc.subr
name="mariadb"
rcvar=`set_rcvar`
load_rc_config $name
start_cmd="mariadb_start"
stop_cmd="mariadb_stop"
mariadb_start() {
checkyesno mariadb_enable && echo "Starting MariaDB." && \
/usr/local/mysql/bin/mysqld_safe --defaults-extra-file=/opt/mysql/my.cnf --user=mysql --datadir=/opt/mysql --pid-file=/opt/mysql/mysql.pid > /dev/null 2>&1 &
}
mariadb_stop() {
checkyesno mariadb_enable && echo "Stopping MariaDB." && \
/usr/local/mysql/bin/mysqladmin -u service -pпароль shutdown > /dev/null 2>&1
}
run_rc_command "$1"
-u service означает пользователя (в MariaDB), от имени которого можно остановить MariaDB, -pпароль — соответственно пароль данного пользователя. Открываем консоль MariaDB (предварительно запустив сервис):
/usr/local/etc/rc.d/mariadb onestart
/usr/local/mysql/bin/mysql -u root
В консоли:
create user 'service'@'localhost' identified by 'пароль';
grant shutdown on *.* to 'service'@'localhost';
Меняем права на скрипт на 700:
chmod 700 /etc/rc.d/mariadb
Добавляем в /etc/rc.conf строку:
mariadb_enable="YES"
Старт сервиса будет осуществляться автоматически при запуске системы.
Запуск вручную:
/etc/rc.d/mariadb onestart
Остановка:
/etc/rc.d/mariadb onestop
Комментарии (4)
RSS свернуть / развернутьyababay
Markony
Sergei_T
Sergei_T
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.