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


Состояния зеркального отображения (SQL Server)

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

На протяжении сеанса зеркального отображения базы данных экземпляры сервера отслеживают друг друга. Партнеры используют состояние зеркального отображения для мониторинга базы данных. За исключением состояния PENDING_FAILOVER, основная и зеркальная база данных всегда находятся в одном состоянии. Если для сеанса назначен свидетель, каждый из партнеров отслеживает его состояние подключения (CONNECTED или DISCONNECTED).

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

Состояние зеркального отображения Описание
СИНХРОНИЗАЦИЯ Содержимое зеркальной базы данных отстает от содержимого основной базы данных. Основной сервер отправляет записи журнала на зеркальный сервер, который применяет изменения к базе данных-зеркалу для её продвижения вперёд.

В начале сеанса зеркального отображения базы данных база данных находится в состоянии SYNCHRONIZING. Основной сервер обслуживает базу данных, и зеркальный сервер пытается наверстать.
СИНХРОНИЗИРОВАННЫЙ Когда зеркальный сервер достигает достаточного уровня синхронизации с основным сервером, состояние зеркального отображения изменяется на синхронизированное. База данных сохраняет данное состояние, пока основной сервер продолжает отправлять изменения на зеркальный сервер, который в свою очередь продолжает применять изменения к зеркальной базе данных.

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

Если безопасность транзакций отключена, некоторые потери данных всегда возможны, даже в состоянии SYNCHRONIZED.
ПРИОСТАНОВЛЕН Зеркальная копия базы данных недоступна. Основная база данных выполняется без отправки журналов на зеркальный сервер, условие, известное как выполняется в открытом режиме. Это состояние после переключения после отказа.

Сеанс также может стать ПРИОСТАНОВЛЕНным в результате ошибок повторного выполнения или если администратор приостанавливает сеанс.

SUSPENDED — это постоянное состояние, которое переживает завершения работы и перезапуски партнера.
ОЖИДАЕТСЯ ПЕРЕХОД НА РЕЗЕРВ Это состояние обнаруживается только на основном сервере после начала переключения на резервный сервер, но сервер не принимает зеркальную роль.

При инициации переключения на резерв основная база данных переходит в состояние PENDING_FAILOVER, быстро завершает все пользовательские подключения и вскоре после этого берет на себя зеркальную роль.
БЕССВЯЗНЫЙ Партнер потерял связь с другим партнером.

См. также

Наблюдение за зеркальным отображением базы данных (SQL Server)