Учетные записи
|
---|
Их три, но для простоты администрирования рекомендуется объединить в одну.
|
Master-Slave репликация
Настройка и подключение резервной базы данных для снятия нагрузки с основной БД
Подключение к сайту дополнительных серверов баз данных позволяет снизить нагрузку на основную базу данных. В этом случае чтение данных происходит из дополнительных (slave) баз данных, а запись - в основную.
Подключение
Подключение и настройка дополнительных (slave) баз данных осуществляется на странице Slave базы данных (Настройки > Веб-кластер > Группа #1 > Репликация).
/bitrix/
.settings.php
Секция connections. Параметры соединения с базой данных и другими источниками данных.
Подробнее...
на всех серверах обязательно должен быть указан адрес подключения к главной базе данных (master). Желательно указывать прямой IP-адрес или быть уверенным, что для каждого веб-сервера будет происходить соединение именно с сервером главной базы данных в случае обращения не по IP-адресу. Использование адреса вида localhost
при такой конфигурации запрещено.
Для репликации необходимо использовать разные серверы с быстрым каналом связи между собой.
В настройках модуля Веб-кластер можно указать время отставания slave базы данных от master, после которого она будет автоматически отключена для снижения риска рассинхронизации данных.- Нажмите кнопку Добавить slave базу данных. После чего откроется окно мастера добавления новой slave базы данных.
- В первом окне будут выведены рекомендации по настройке системы , критичные для работы. Обязательно исправьте их, пока проверка не покажет, что всё в порядке .
- Пройдите все
шаги мастера
И так далее... .
После прохождения мастера база появится в списке, но будет не задействована:
В списке slave баз данных в меню действий выполните команду Начать использовать и следуйте рекомендациям мастера.
После успешного подключения slave-сервера баз данных отображается его статус .
Настройка параметров базы данных
При необходимости измените настройки подключения базы. Для этого дважды кликните по желаемой базе в списке или воспользуйтесь пунктом меню действий Изменить. Откроется форма Настройка параметров главной базы/slave базы данных:
Значение в поле Процент распределения нагрузки (0..100) указывается для каждой базы в отдельности. Эта опция перераспределяет большую часть нагрузки на более быстрые и мощные серверы в составе кластера.
Особенности обращений к master базе
Если на хите в системе происходит запись в master базу, то последующие операции чтения (запросы) данных будут тоже происходить из master базы, а не slave.
Это связано с особенностью кластерной архитектуры: только так можно быть уверенным в том, что при запросе этих данных они будут актуальны, т.к. синхронизация со слейвами всегда имеет определенное отставание (данных там просто может еще и не быть).
Примечание для разработчиков: Собственные запросы на запись в системе (пример - веб аналитика) обрамлены специальными методами класса CDatabase: StartUsingMasterOnly и StopUsingMasterOnly. Которые соответственно начинают и заканчивают использование только мастер базы.
Вы можете обернуть свои АПИ вызовы на запись такими конструкциями, но должны быть уверены, что дальше по коду не будет чтения этих данных из базы.Дополнительно
- Урок Настройка репликации MySQL, аварийное переключение slave->master - пример тонкой настройки реплицации.
и Ваше мнение важно для нас