Настраиваем Data Guard Broker
Классическая схема работы Standby меня в принципе всегда устраивала, но появилось желание перенастроить контроль за StandBy через Data Guard Broker.
Итак, на входе у нас стабильно работающий физический StandBy. Настройка осуществляется через инструмент dgmgrl.
Подключаемся и смотрим конфигурацию:
dgmgrl / DGMGRL> show configuration; ORA-16525: The Oracle Data Guard broker is not yet available. Configuration details cannot be determined by DGMGRL DGMGRL>
Конфигурации у нас нет, поэтому начинаем её создавать:
DGMGRL> CREATE CONFIGURATION 'DGconf' AS PRIMARY DATABASE IS 'primary' > Connect identifier IS 'primary'; Error: ORA-16525: The Oracle Data Guard broker is not yet available. DGMGRL>
Брокер не включен, поэтому включаем его через sqlplus. Но перед тем как включить, необходимо выключить дополнительные пути сохранения архив-логов на StandBy. Операцию проводим на обеих машинах: primary и standby:
ALTER SYSTEM SET log_archive_dest_2='' scope=both; ALTER SYSTEM SET dg_broker_start = true scope=both;
Теперь снова пробуем создать конфигурацию в dgmgrl:
Connected as SYSDG. DGMGRL> CREATE CONFIGURATION 'DGconf' AS PRIMARY DATABASE IS 'primary' > Connect identifier IS 'primary'; Configuration "DGconf" created with primary database "primary" DGMGRL>
Добавляем StandBy в конфигурацию:
DGMGRL> ADD DATABASE 'standby' as Connect identifier IS 'standby'; Database "standby" added DGMGRL> show configuration; Configuration - DGconf Protection Mode: MaxPerformance Members: primary - Primary database standby - Physical standby database Fast-Start Failover: DISABLED Configuration Status: DISABLED
Остаётся включить конфигурацию:
ENABLE CONFIGURATION
И всё, Data Guard готов!
При необходимости можно сделать рабочее переключение
Если бизнес-правила требуют, то можно ещё настроить и Fast-Start Failover, чтобы Standby активировался автоматически при отказе основной базы.
Возможные проблемы
У меня встретились две:
1. Standby система была запущена без SPFILE. Лучше это исправить сразу.
2.
/opt/oracle/diag/rdbms/<standby>/<standby>/trace/drc<standby>.log
Остались вопросы по настройке Data Guard Broker? Спрашивайте в комментариях!