Я рассматриваю следующую схему:
Таким образом, при обновлении / исправлении сервера базы данных до более новой версии мы могли бы сделать следующее:
После этого роли переключаются, в результате чего основной сервер становится резервным, и наоборот. Насколько я понимаю, общее время простоя для этого должно составлять несколько секунд.
Это жизнеспособная установка? Есть ли какие-то вещи, о которых я должен быть осторожен?
Это вполне приемлемая установка. В зависимости от вашего выбора движков БД, я бы посоветовал вам также настроить вторую копию своей базы данных и, возможно, реализовать план зеркалирования или доставки журналов. В отдаленной вероятности, что какое-либо повреждение происходит в одной базе данных, вы можете переключиться на другую базу данных. Но я отвлекся :)
Возвращаясь к вашему вопросу, есть несколько дополнительных соображений - сколько запланировано времени для переключения, и это повлияет на вашу пользовательскую базу.
Это может сработать. Единственное место, где у вас могут возникнуть проблемы, - это сама БД. Ему может не понравиться обновление без подключенных данных (на резервной машине), и мне не нравится, когда данные снова появляются после обновления (после того, как резервная копия сделана первичной).
Обязательно проверьте это на своем программном обеспечении БД в лаборатории перед запуском в производство, так как вы потенциально можете повредить свою БД. Один из способов защиты от этого - сделать снимок SAN перед переключением, чтобы вы могли снова переключиться на исходный сервер и снимок в случае аварии.