Резервный MySQL-сервер

Материал из ISPWiki

Перейти к: навигация, поиск

Подготовка сервера

Если на текущем сервере нет второго сетевого интерфейса, то пропустите данный шаг.

Откройте файл /etc/network/interfaces

 # nano /etc/network/interfaces

и добавьте строки

 auto ethX
 iface ethX inet static
     address 10.0.0.5
     netmask 255.0.0.0

где X - это номер сетевого интерфейса.

Чтобы изменения вступили в силу, необходимо выполнить команду:

 # /etc/init.d/networking restart

Установка и настройка MySQL-сервера

Выполните установку MySQL-сервера следующей командой:

 # apt-get install mysql-server

Получите статус бинарных логов основного MySQL-сервера:

 # ssh root@10.0.0.4 "echo \"SET GLOBAL read_only = ON; SHOW MASTER STATUS;\" | mysql -uroot -pXXX"

где XXX - пароль root, а 10.0.0.4 - это IP-адрес основного MySQL-сервера.

Запишите значения полученных из ответа переменных LogFile и LogPosition, так как они потребуются позже.

Остановите основной MySQL-сервер:

 # ssh root@10.0.0.4 "/etc/init.d/mysql stop"

Скопируйте с основного MySQL-сервера файл /etc/mysql/my.cfg:

 # scp root@10.0.0.4:/etc/mysql/my.cfg /etc/mysql/

Откройте файл /etc/mysql/my.cfg

 # nano /etc/mysql/my.cfg

и измените опцию server-id в разделе mysqld

 ...
 [mysqld]
 ...
 server-id 2
 ...

Скопируйте директорию /var/lib/mysql с основного MySQL-сервера:

 # scp -r root@10.0.0.4:/var/lib/mysql/* /var/lib/mysql/

Запустите основной MySQL-сервер:

 # ssh root@10.0.0.4 "/etc/init.d/mysql start"

Перезапустите локальный MySQL-сервер командой:

 # /etc/init.d/mysql restart

Запустите репликацию баз данных на MySQL-сервере:

 # echo "CHANGE MASTER TO MASTER_HOST = '10.0.0.4', MASTER_USER = 'replication', MASTER_PASSWORD = 'YYY', \
   MASTER_PORT = 3306, MASTER_CONNECT_RETRY = 10, MASTER_LOG_FILE = 'LogFile', MASTER_LOG_POS = LogPosition; \
   START SLAVE;" | mysql -uroot -pXXX"

где XXX - пароль root, YYY - пароль пользователя для репликаций, 10.0.0.4 - это IP-адрес основного MySQL-сервера, а LogFile и LogPosition - это полученные выше переменные.

Внимание: В настоящий момент механизм автоматического переключения с основного MySQL-сервера на резервный не реализован. В случае выхода из строя основного MySQL-сервера необходимо будет вручную выполнить смену IP-адреса в панели для данного сервера на резервный.

Была ли эта информация полезной? Да | Нет
Личные инструменты