Выполнение аварийного переключения вручную (без свидетеля, режим высокой защиты) - PullRequest
1 голос
/ 16 января 2009

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

Я пытался использовать:

ALTER DATABASE myMirrorDatabase SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS

Но это переводит БД в следующее состояние:

[In Recovery]

Я не могу запустить RESTORE DATABASE, потому что БД настроена на зеркалирование. Так каков правильный способ сделать это? Помогите!


Дополнительная информация ... (дано SERVER_A с DB_A и SERVER_B с DB_B)

Исходное состояние:

DB_A is [Principal, Synchronised], DB_B is [Mirror, Synchronised / Restoring]

Я останавливаюсь SERVER_A:

DB_A is [offline], DB_B is [Mirror, Disconnected / In Recovery]

Я запускаю приведенный выше оператор базы данных alter:

DB_A is [offline], DB_B is [In Recovery] 

1 Ответ

2 голосов
/ 16 января 2009

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

USE master
go
ALTER DATABASE AdventureWorks SET PARTNER OFF
GO
RESTORE DATABASE AdventureWorks WITH RECOVERY
GO

Это выведет зеркало в интернет.

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

...