1. Conceito do DG Broker
O Dataguard Broker é um framework da Oracle que centraliza a monitoração e administração do Ambiente no contexto do Guard, onde a partir de uma instancia podemos ter até 9 standby databases configurados, com as mais diversas possibilidades, open read only, physical standby, logical standby e sem limtite geográfico.
O Broker automatiza diversas tarefas dentro do ambiente de alta disponibilidade e contingenciado que antes eram feitas manualmente como, alteração do tipo de proteção do dataguard, adição de um novo membro no cluster ou dataguard, transporte e aplicação de redo logs, switchover e failover, entre outras funções.
O Broker pode ser administrado através de um aplicativo de linha de comando chamado Dataguard Comand line (DGMGRL) e o Enterprise Manager.
Fonte: Oracle Data Guard Broker Concepts
2. Pre-requisitos
O pre-requisito principal antes de se criar a configuração do Broker é que o Dataguar / Standby Database já exista e a replica do archives estejam funcionando, este foi o passo feito anteriormente, caso ainda não foi executado seguir para Dataguard - Part 2 - Criando o Standby Database
Em linhas gerais, o dataguard broker mantem em um arquivo toda a configuração do Broker, ele é criado a nivel de instancia a partir dos parametros db_broker_fileN, e existe pelo menos um arquivo por instancia. O Parametros dg_broker_start determina se o broker deve ser usado, e os parametros de db_unique_name e db_name estão mais a nivel do Standby Database e já devem ter sidos configurados.
Parametro | Producao | Standby |
Em ambos ambientes (Prod e Standby) Executar:
ALTER SYSTEM SET dg_broker_config_file1 = '+DG_DATA/ORCL/dr1mfg.dat' scope=both;
ALTER SYSTEM SET dg_broker_config_file2 = '+DG_FRA/ORCL/dr2mfg.dat' scope=both;
ALTER SYSTEM SET DG_BROKER_START=TRUE scope=both;
3. Criando a configuração
A configuração do Broker pode ser criado por linha de comando através do DGMGRL conectando-se com o sys com a seguir:
[oracle@os-indaia-orcl-prod ~]$ dgmgrl
DGMGRL for Linux: Version 11.2.0.3.0 - Production
Copyright (c) 2000, 2009, Oracle. All rights reserved.
Welcome to DGMGRL, type "help" for information.
DGMGRL> connect sys/oracle
Connected.
Para criar a configuração inicial chamada ORCL_DR devemos utilizar o comando create configuration.
DGMGRL> CREATE CONFIGURATION ORCL_DR AS PRIMARY DATABASE IS ORCL CONNECT IDENTIFIER IS ORCL;
Configuration "ORCL_DR" created with primary database "ORCL"
Agora por fim devemos adicionar a instancia de standby com o comando add database:
DGMGRL> ADD DATABASE ORCLSTBY AS CONNECT IDENTIFIER IS ORCLSTBY MAINTAINED AS PHYSICAL;
Database "orclstby" added
Para verificar a configuração do Broker utilizamos o comando show configuration, note que as duas instancias (Prod e Stby) já fazem parte da configuração, porém esta configuração ainda não esta habilitada:
DGMGRL> show configuration
Configuration - ORCL_DR
Protection Mode: MaxPerformance
Databases:
ORCL - Primary database
orclstby - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
DISABLED
4. Habilitando
Para habilitar a configuração base executar o comando Enable Configuration e o standby já deve iniciar o servico de transporte e aplicação de archives.
DGMGRL> ENABLE CONFIGURATION;
Enabled.
DGMGRL> show configuration
Configuration - ORCL_DR
Protection Mode: MaxPerformance
Databases:
ORCL - Primary database
orclstby - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
Próximo Passo: Dataguard - Parte 4 - Criando o TAF (Transparent Application Failover)