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

Как и ранее для начала процесса failback необходимо, чтобы все пользователи были отключены, поэтому обе базы должны быть остановлены. Рекомендуется проверить все настройки transition для первичной и вторичной базы данных.

Нельзя запускать базы данных после перехода, т.к. необходимо будет выполнить дополнительные действия на случай сбоя во время перехода. Убедившись, что подключенных пользователей нет, можно начать процесс failback.
Для начала процесса failback с контролируемым переходом необходимо:
1. Остановить и перезапустить обе базы данных. Этим будет гарантирован сброс всех изменений в source-базе на диск и репликация их на target-базу.
2. Проверить завершение процесса синхронизации баз данных, для этого:
a. Можно использовать лог файл баз
b. Можно использовать команду: dsrutil source-db-name -C status –detail
Если будет возвращено число 3049 – обе базы синхронизированы.
3. Снова остановить базы данных.
4. Для первичной базы запустить команду: dsrutil primary-db-name -C transition
Эта команда переведет первичную базу данных в состояние source.

Если в процессе перехода произойдет сбой, можно перезапустить вторичную базу данных для продолжения промышленной работы. Позже можно попытаться запустить процесс failback повторно.
Если переход первичной базы в состояние source был успешно завершен, следует выполнить переход вторичной базы данных.
5. На вторичной машине выполнить переход с помощью команды: dsrutil secondary-db-name -C transition
Если произойдет сбой во время перехода на вторичной базе, то можно запустить уже имеющуюся source-базу в качестве промышленной, что позволит исключить время простоя и продолжить работу системы.
Если произошел сбой во время перехода, и первичная база уже запущена, то необходимо попытаться завершить процесс перехода вторичной базы путем повторного выполнения команды, указанной выше.
После того как команда успешно отработает, переход вторичной базы в состояние target завершен.
В этой точке роли обеих баз меняются: первичная база стала снова промышленной базой, а вторичная стала снова ее копией.
Первичная репликация теперь снова работает, т.е. как и до сбоя сервер репликации копирует транзакции во вторичную базу.
|