Учетные записи
|
---|
Их три, но для простоты администрирования рекомендуется объединить в одну.
|
Настройка репликации MySQL
Как настроить |
Репликация MySQL используется для решения следующих задач:
- Увеличение производительности СУБД за счёт подключения к ней серверов при возрастающей нагрузке. Выделяется один сервер преимущественно для модификации данных (master) и остальные для чтения данных (slaves).Это особенно эффективно для веб-приложений, у которых большая часть запросов к СУБД - запросы на чтение.
- Онлайн бэкап - данные передаются в режиме онлайн на резервные slave-сервера. При отказе основного сервера на одном из резервных slave серверов имеется "свежая" копия данных.
- Эффективное резервное копировании: бэкап делается с резервного сервера без прерывания /замедления работы основного сервера СУБД. Для осуществления целостного бинарного Двоичный (bin’арный) бэкап бэкапа СУБД (в особенности InnoDB) можно остановить на необходимое время резервный сервер, выполнить бэкап и запустить резервный сервер снова.
- Обеспечение высокой доступности: при выходе из строя одного из серверов СУБД система продолжает обрабатывать запросы.
Надежность репликации |
Вечная проблема: либо производительность, либо надёжность. Для обеспечения максимальной надежности репликации рекомендуется установить следующие параметры MySQL:
innodb_flush_log_at_trx_commit = 1 sync_binlog = 1 sync_relay_log = 1 sync_relay_log_info = 1
Для повышения производительности можно использовать такие параметры (чревато потерей данных нескольких транзакций в момент аварии на базе данных):
innodb_flush_log_at_trx_commit = 2 sync_binlog = 0
Динамический hostname |
Если у настраиваемого сервера динамический IP-адрес/hostname, рекомендуется явно задать параметры: relay-log, relay-log-index (актуально для версии MySQL 5.5).
Привилегии |
Для работы репликации учетные записи основного и резервных master/slave-серверов должны иметь, кроме стандартных, также привилегии: SUPER
, REPLICATION CLIENT
, REPLICATION SLAVE
.
Временные зоны |
Если сервера СУБД кластера расположены в разных дата-центрах, необходимо настроить на них единую временную зону.
Настройка репликации в административном интерфейсе |
При добавлении резервного
slave-сервера
Подключение к сайту дополнительных серверов баз данных позволяет снизить нагрузку на основную базу данных. В этом случае чтение данных происходит из дополнительных (slave) баз данных, а запись - в основную.
Подробнее ...
СУБД мастер настройки репликации проверяет
все необходимые параметры
. После успешного добавления slave-сервера отображается его
статус
.
Администрирование репликации |
Репликация после настройки работает надежно и требует минимального администрирования. Тем не менее, рекомендуется периодически проверять её состояние утилитами мониторинга операционной системы (nagios, zabbix, monit, linux-ha).
В маловероятном случае возникновения ошибки на slave-сервере переинициализируйте его - заново залейте данные с основного сервера. Для этого нужно его Прекратить использовать, а затем Начать использовать в разделе Репликация (Настройки > Веб-кластер > Репликация).
Резервное копирование |
Можно свободно останавливать slave-сервера, в том числе для осуществления логического и целостного бинарного резервного копирования средствами MySQL и операционной системы. При этом не прерывается работа основного сервера СУБД.
и Ваше мнение важно для нас