Ubuntu server. Изменение места хранения баз MySQL
20.03.2012
Категория : IT-шная

Небольшое хау-ту по поводу переноса баз MySQL на другой раздел диска с изменением путей в конфиг-файлах

В инструкциях ниже учитывается то, что базы MySQL расположены по стандартному пути - "/var/lib/mysql", а перенос их будет осуществляться в "/opt/mysql". Просьба это учесть и иметь ввиду при работе с собственной системой.

1. Останавливаем MySQL сервер

sudo /etc/init.d/mysql stop

2. Создадим директорию "mysql", в которой будут размещаться наши базы данных (у меня это "/opt/mysql")

sudo mkdir /opt/mysql

3. Переносим файлы баз данных и назначаем свежесозданной директории права пользователя "mysql"

sudo chown -R mysql:mysql /opt/mysql
sudo cp -R /var/lib/mysql/ /opt/mysql
sudo chown -R mysql:mysql /opt/mysql/*

4. Редактируем файл "/etc/mysql/my.cnf", меняем значение пути к базам данных в строке "datadir = /var/lib/mysql" на свое

sudo nano /etc/mysql/my.cnf

5. Поскольку в Ubuntu используется такая штука, как AppArmor, нам необходимо внести некоторые коррективы в конфиг-фаил по работе с MySQL. Редактируем файл "/etc/apparmor.d/usr.sbin.mysqld"

sudo nano /etc/apparmor.d/usr.sbin.mysqld

Ищем в нем строки

/var/lib/mysql/ r,
/var/lib/mysql/** rwk,

и меняем на

/opt/mysql/ r,
/opt/mysql/** rwk,

6. Перезапускаем apparmor

sudo /etc/init.d/apparmor restart

7. Запускаем сервер MySQL

sudo /etc/init.d/mysql start

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

sudo rm /var/lib/mysql
Еще никто не оставил комментария
    Добавить комментарий