Поделиться через


Зеркальное отображение баз данных и доставка журналов

Для каждой базы данных может быть создано зеркальное отображение и доставка журналов; они также могут существовать одновременно. При выборе подхода примите во внимание следующее.

  • Сколько требуется целевых серверов?

    Если требуется только одна целевая база данных, рекомендуется использовать зеркальное отображение базы данных.

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

  • Если на целевом сервере баз данных нужно задержать процесс восстановления (обычно для защиты от логических ошибок), используйте доставку журналов отдельно или совместно с зеркальным отображением.

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

ПримечаниеПримечание

Общие сведения об этих технологиях см. в разделах Обзор зеркального отображения базы данных и Общие сведения о доставке журналов.

Сочетание доставки журналов и зеркальных отображений баз данных

Основная база данных сеанса зеркального отображения может также играть роль базы данных-источника в доставке журналов, или наоборот, так как ресурс резервных копий для доставки журналов остается неизменным. Сеанс зеркального отображения базы данных может выполняться в любом режиме работы: синхронном (полная безопасность транзакций) или асинхронном (безопасность транзакций не обеспечивается).

ПримечаниеПримечание

Чтобы использовать зеркальное отображение базы данных, всегда необходима модель полного восстановления.

Обычно при сочетании доставки журналов и зеркального отображения баз данных сеанс отображения устанавливается перед доставкой журналов, но это необязательно. Затем текущая основная база данных настраивается в качестве источника для доставки журналов (основная база данных (источник)) вместе с одной или несколькими базами данных-получателями. Зеркальная база данных также должна быть настроена как источник в доставке журналов (зеркальная база данных-источник). Базы данных-получатели должны находиться на экземплярах серверов, отличных от экземпляров основного сервера-источника и зеркального сервера-источника.

ПримечаниеПримечание

Параметры чувствительности к регистру серверов, участвующих в доставке журналов, должны совпадать.

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

Чтобы отправка журналов могла продолжаться после переключения на другой ресурс в сеансе зеркального отображения, зеркальный сервер также нужно настроить как сервер-источник, используя ту же конфигурацию, что и у основной базы данных-источника. Зеркальная база данных находится в состоянии восстановления, поэтому задания резервного копирования не будут создавать резервные копии журналов на зеркальной базе данных. Это гарантирует, что зеркальная база данных-источник не будет мешать работе основной базы данных-источника, резервные копии журналов которой копируются на серверы-получатели. Чтобы предотвратить появление ложных предупреждений, по завершении резервного копирования на зеркальной базе данных-источнике задание резервного копирования записывает сообщение в таблицу log_shipping_monitor_history_detail, а задание агента сообщает об успешном завершении работы.

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

ПримечаниеПримечание

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

Чтобы работать в режиме высокой безопасности с автоматическим переходом на другой ресурс, сеанс зеркального отображения базы данных должен быть настроен для использования дополнительного экземпляра сервера, называющегося следящим. Если по какой-то причине после синхронизации основная база данных недоступна, а зеркальный и следящий серверы по-прежнему могут взаимодействовать друг с другом, происходит автоматический переход на зеркальный сервер. После автоматического перехода зеркальный сервер берет на себя роль основного, и его база данных становится доступной в оперативном режиме как основная. Дополнительные сведения см. в разделе Автоматический переход на другой ресурс. Если ресурс для хранения резервных копий журналов доступен новому основному серверу-источнику, его задания резервного копирования начинают отправлять туда резервные копии журналов. Синхронный режим отображения базы данных гарантирует, что переход на зеркальный сервер не повлияет на последовательность журналов и что будут восстанавливаться только допустимые журналы. Серверы-получатели продолжают копировать резервные копии журналов, не зная о том, что основным стал другой экземпляр сервера.

Для реализации этого сценария при использовании монитора доставки журналов никаких особых действий предпринимать не нужно. Сведения об использовании удаленного экземпляра сервера мониторинга в этом сценарии см. в статье «Влияние зеркального отображения базы данных на удаленный экземпляр сервера мониторинга» далее в этом разделе.

Переход с основной базы данных на зеркальную

На следующем рисунке показано, как доставка журналов и зеркальное отображение базы данных работают вместе, если зеркальное отображение производится в режиме высокого уровня безопасности с автоматическим переходом на другой ресурс. Изначально Server_A является одновременно и основным сервером зеркального отображения, и сервером-источником в доставке журналов. Server_B — зеркальный сервер, также настроенный как сервер-источник, в данный момент неактивный. Server_C и Server_D — серверы-получатели в доставке журналов. Чтобы добиться максимальной доступности в сеансе доставки журналов, ресурс резервных копий находится в общей папке на отдельном компьютере.

Доставка журналов и зеркальное отображение баз данных

После перехода на зеркальный сервер имя сервера-источника, определенное на серверах-получателях, не меняется. .

Влияние зеркального отображения базы данных на удаленный экземпляр сервера мониторинга

При использовании удаленного экземпляра сервера мониторинга сочетание доставки журналов и зеркального отображения баз данных влияет на информацию, хранящуюся в таблицах монитора. Информация о сервере-источнике представляет собой комбинацию данных об основном сервере-источнике и мониторах, настроенных на каждом сервере-получателе.

Чтобы сделать наблюдение как можно менее заметным, при использовании удаленного монитора рекомендуется указывать имя исходного сервера-отправителя во время описания источника на сервере-получателе. Такой подход также упрощает изменение конфигурации доставки журналов из агента Microsoft SQL Server. Дополнительные сведения о наблюдении см. в разделе Мониторинг доставки журналов.

Совместная настройка зеркального отображения и доставки журналов

Чтобы совместно настроить зеркальное отображение и доставку журналов, выполните следующие шаги:

  1. Восстановите резервные копии основной базы данных-источника с параметром NORECOVERY на другой экземпляр сервера, который затем будет использоваться как зеркальная база данных основной базы данных-источника. Дополнительные сведения см. в разделе Подготовка зеркальной базы данных к зеркальному отображению.

  2. Настройте зеркальное отображение базы данных. Дополнительные сведения см. в разделе Как настроить сеанс зеркального отображения базы данных (среда SQL Server Management Studio) или Настройка зеркального отображения базы данных.

  3. Восстановите резервные копии основной базы данных-источника на другие экземпляры сервера, которые затем будут использоваться как серверы-получатели в доставке журналов. Дополнительные сведения см. в разделе Развертывание доставки журналов.

  4. Настройте доставку журналов на основной базе данных как на базе данных-источнике для одной или более баз данных-получателей.

    Создайте общий ресурс для каталога резервных копий (ресурс резервных копий). Это гарантирует, что после переключения ролей между основным и зеркальным серверами задания резервного копирования будут продолжать вести запись в тот же каталог, что и ранее. Рекомендуется также убедиться, что этот ресурс находится на физическом сервере, отличном от тех серверов, на которых находятся серверы баз данных, участвующие в зеркальном отображении и доставке журналов.

    Дополнительные сведения см. в разделе Как включить доставку журналов (среда SQL Server Management Studio).

  5. Переход вручную с основной базы данных на зеркальную.

    Переход на другой ресурс вручную:

  6. Настройте доставку журналов в новой основной (ранее зеркальной) базе данных как в базе данных-источнике.

    Важное примечаниеВажно!

    Не выполняйте никаких действий по настройке базы данных-получателя.

    Необходимо использовать папку резервных копий, которая использовалась на шаге 4.

    Интерфейс Доставка журналов транзакций в среде SQL Server Management Studio поддерживает работу только с одной базой данных-источником для каждой конфигурации доставки журналов. Следовательно, чтобы настроить в качестве базы данных-источника нового участника, нужно использовать хранимые процедуры. Дополнительные сведения см. в разделе Как включить доставку журналов (Transact-SQL).

  7. Выполните еще один переход на другой ресурс вручную, чтобы вернуться к исходному участнику.