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

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

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

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

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

Описание

SYNCHRONIZING

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

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

SYNCHRONIZED

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

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

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

SUSPENDED

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

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

SUSPENDED является постоянным состоянием, нечувствительным к завершению работы участников и их запуску.

PENDING_FAILOVER

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

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

DISCONNECTED

Один участник потерял связь с другим участником.