Назад | Перейти на главную страницу

Ведомый с большим количеством баз данных, чем ведущий

У меня два сервера. Назовем ServerA и ServerB, каждый имеет свой собственный сервер базы данных и веб-сервер. Эти два сервера используются для запуска разных веб-сайтов. Данные ServerA более важны, потому что они имеют дело с денежными транзакциями. В то время как ServerB имеет веб-сайт, похожий на блог, что менее важно.

Я ищу решение для резервного копирования в реальном времени для моего ServerA. (В настоящее время я делаю полное резервное копирование для ServerA один раз в день). Прямо сейчас я хочу попробовать резервное копирование Master-Slave. ServerA будет «Master», а ServerB - «Slave».

Вопрос
ServerA (Мастер)
- База данныхA

ServerB (подчиненный)
- DatabaseA (синхронизация с сервером A)
- DatabaseB (уникально для ServerB, используется для веб-сайтов, похожих на блог)
- DatabaseC (уникально для ServerB, используется для веб-сайтов, похожих на блог)

Веб-приложение в ServerB не будет касаться DatabaseA. Я знаю, что это возможно, но я хочу знать, является ли это разумным решением для меня, учитывая, что у меня нет достаточного бюджета для покупки другого сервера для резервного копирования.

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

Поскольку вы пишете, что DatabaseA используется для денежных транзакций, есть также соображения безопасности.
Если вы запускаете небезопасные приложения на ServerB, компрометация одного из них может приблизить злоумышленника к вашему важному приложению.

В вашем сообщении упоминается, что вы хотите использовать эту настройку как Master-Slave резервное копирование.
Я надеюсь, ты имеешь в виду, что будешь бежать mysqldump (или аналогичные методы) на подчиненном сервере.

Настройка Master-Slave НЕ решение для резервного копирования!
Представьте, что в вашем приложении есть ошибка или оно скомпрометировано и потеряет самые ценные данные.
Оператор drop будет воспроизведен и мгновенно (более или менее) сотрет вашу «резервную копию».

Если сервер B выполняет дамп или резервное копирование, то это может быть решение для резервного копирования, также сервер A никогда не почувствует нагрузку резервного копирования. Мы делаем это на серверах с высокими требованиями, чтобы они никогда не тормозили во время резервного копирования.