#sql-server #sql-server-2008-r2 #database-replication
#sql-server #sql-server-2008-r2 #репликация базы данных
Вопрос:
Возможно ли реплицировать действующую базу данных с SQL Server 2008 R2, действующего как master (здесь происходит вся запись), на 3-4 независимые физические машины SQL Server 2008 R2?
У меня есть несколько дополнительных ресурсов только для тяжелых запросов «SELECT» (ЧТЕНИЕ)
Спасибо, Дмитрий
Ответ №1:
Да, это возможно. Но в вашем проекте придется учитывать задержку между записью и чтением: при чтении на подписчике могут не быть найдены данные, которые вы только что записали на главном сервере. Задержка репликации может составлять от нескольких миллисекунд до минут, а в некоторых сложных ситуациях может даже составлять часы.
Если вы согласны с задержкой (а вы должны быть согласны, поскольку это единственный вариант), то вы можете рассмотреть решения с более высокой задержкой, но намного проще в обслуживании, а именно с доставкой журналов. Доставка журналов проще, чем репликация, поскольку она не требует специальной обработки изменений DDL.
Комментарии:
1. Доставка журналов в некоторых отношениях проще, в других сложнее. Например, как вы регулярно считываете данные из базы данных назначения? Вы можете использовать моментальные снимки базы данных или восстановление в режиме ожидания, но оба этих варианта требуют дополнительного вмешательства (и отключения клиентов), когда вы хотите получить более свежие данные для потребителей в пункте назначения.