Отработка отказа вручную
При этом клиенты отключаются от базы данных, а роли участников меняются на противоположные. Отработка отказа вручную поддерживается только в режиме высокого уровня безопасности.
Примечание |
---|
В этом разделе предполагается, что вы знакомы с режимом высокого уровня безопасности. Дополнительные сведения см. в разделе Синхронное зеркальное отображение базы данных (режим высокой безопасности). |
Поддержка уровня доступности при обновлениях
Администратор базы данных может вручную произвести отработку отказа для обновления оборудования или программного обеспечения, не снижая уровня доступности. Если зеркальное отображение базы данных используется для обновления программного обеспечения, зеркальный сервер и (или) система уже должны получить эти обновления.
Примечание |
---|
Зеркальное отображение базы данных должно быть способно выполнить последовательное обновление, однако это не гарантируется, поскольку последующие изменения не известны. Дополнительные сведения см. в разделе Как снизить время простоя зеркальных баз данных при обновлении экземпляров сервера. |
Приведенный ниже рисунок иллюстрирует переключение на другой экземпляр вручную для поддержки уровня доступности базы данных при обновлении экземпляра сервера базы данных. По завершении обновления администратор может вновь переключиться на первоначальный экземпляр сервера. Эта возможность полезна в том случае, если администратор хочет остановить сеанс зеркального отображения и использовать какой-нибудь другой зеркальный сервер. При этом один экземпляр сервера может использоваться многократно, для обновления нескольких экземпляров сервера базы данных.
Условия для отработки отказа вручную
Для отработки отказа вручную безопасность транзакций должна быть установлена в FULL (т. е. транзакция должна находиться в режиме высокой защиты). Если между участниками имеется соединение, а база данных синхронизирована, поддерживается отработка отказа вручную.
Принципы работы отработки отказа вручную
Эта последовательность включает в себя следующие действия.
Основной сервер отключает клиентов от основной базы данных и отправляет заключительный фрагмент журнала транзакций на зеркальный сервер и, готовясь к переключению ролей зеркальных серверов, устанавливает основную базу данных в состояние SYNCHRONIZING.
Зеркальный сервер регистрирует номер LSN последней записи журнала, полученной от основного сервера, в качестве номера LSN переключения.
Примечание Чтобы выяснить этот номер, произведите запрос столбца mirroring_failover_lsn из таблицы sys.database_mirroring (Transact-SQL).
Если в очереди повтора остался какой-либо журнал, то зеркальный сервер завершает накат зеркальной базы данных. Длительность выполнения зависит от скорости системы, текущей рабочей нагрузки и количества записей журнала в очереди повторного выполнения. Для синхронного режима работы время отработки отказа регулируется ограничением размера очереди повторного выполнения. Однако это может привести к замедлению работы основного сервера, ожидающего выполнения операций зеркальным сервером.
Примечание Чтобы узнать текущую длину очереди повторов, используйте счетчик Очередь повторов в счетчике производительности зеркального отображения (дополнительные сведения см. в разделе Наблюдение за состоянием зеркального отображения базы данных).
Зеркальный сервер становится новым основным сервером, а бывший основной сервер становится новым зеркальным сервером.
Новый основной сервер выполняет откат всех незафиксированных транзакций и переводит свою копию базы данных в режим в сети в качестве основной базы данных.
Бывший основной сервер берет на себя роль зеркального сервера, а бывшая основная база данных становится зеркальной базой данных. Новый зеркальный сервер проводит быструю повторную синхронизацию новой зеркальной базы данных с новой основной базой данных.
Примечание Как только новый зеркальный сервер выполнил повторную синхронизацию баз данных, снова становится возможной отработка отказа, но уже в обратном направлении.
После отработки отказа клиенты должны повторно подключиться к текущей основной базе данных. Дополнительные сведения см. в разделе Клиентские соединения с зеркальной базой данных.
Инициация отработки отказа вручную