Usar o Oracle Data Guard em um Sistema de Banco de Dados

O Oracle Data Guard assegura alta disponibilidade, proteção de dados e recuperação de desastre para dados empresariais.

A implementação do Data Guard exige dois bancos de dados: um em uma atribuição principal e outro em uma atribuição standby. Os dois bancos de dados, o banco de dados principal e o banco de dados stand-by, juntos, fazem uma associação do Data Guard. A maioria dos aplicativos acessa o banco de dados principal, enquanto o banco de dados stand-by é uma cópia transacionalmente consistente do banco de dados principal.

O Data Guard mantém o banco de dados stand-by transmitindo e aplicando dados de redo do banco de dados principal. Se o banco de dados principal se tornar indisponível, você poderá usar o Data Guard para alternar ou fazer failover do banco de dados stand-by para a atribuição principal.

Observação:

Os bancos de dados stand-by no OCI são standbys físicos.

Este artigo explica como usar a Console para gerenciar associações do Data Guard no sistema de banco de dados.

Para obter mais informações sobre o Data Guard, consulte Introduction to Oracle Data Guard.

Política Obrigatória de IAM

Para usar o Oracle Cloud Infrastructure, um administrador deve conceder a você acesso de segurança em uma política. Esse acesso será necessário se você estiver usando a Console ou a API REST com um SDK, uma CLI ou outra ferramenta. Caso receba uma mensagem de que você não tem permissão ou de que não está autorizado, verifique com o administrador o tipo de acesso que você tem e em qual compartimento deve trabalhar.

Se você não conhece as políticas, consulte Conceitos Básicos de Políticas e Políticas Comuns.

Pré-requisitos e Informações Gerais

Uma implementação do Data Guard requer dois sistemas de banco de dados, um contendo o banco de dados principal e outro contendo o banco de dados stand-by. Quando você ativa o Data Guard para um banco de dados, um novo sistema de banco de dados com o banco de dados stand-by é criado e associado ao banco de dados principal.

Observação:

Uma configuração do Data Guard é limitada a um banco de dados standby para cada banco de dados principal.

Os detalhes dos requisitos são os seguintes:

  • Os dois sistemas de banco de dados devem estar no mesmo compartimento.
  • As versões e edições do banco de dados devem ser idênticas. Para bancos de dados 23ai, os bancos de dados principal e stand-by devem estar na mesma versão da release principal, enquanto o banco de dados stand-by pode estar em uma versão secundária mais alta.
  • O Data Guard não oferece suporte ao Oracle Database Standard Edition. (O Active Data Guard requer o Enterprise Edition Extreme Performance.)
  • Cada banco de dados em uma associação do Data Guard deve ter um valor de nome exclusivo (DB_UNIQUE_NAME) que não seja usado por outros bancos de dados nos sistemas de banco de dados que armazenam a associação do Data Guard. No entanto, os bancos de dados principal e stand-by podem usar o mesmo valor DB_NAME como nome do banco de dados.
  • A edição do banco de dados determina se o ADG (Active Data Guard) pode ser usado. O ADG só está disponível com o Enterprise Edition Extreme Performance. Se você estiver usando o modelo de licenciamento BYOL e sua licença não incluir ADG, certifique-se de que o ADG não esteja ativado ao configurar o Data Guard para o Enterprise Edition Extreme Performance. Como alternativa, você pode usar o Enterprise Edition ou Enterprise Edition High Performance, que não ativam o ADG por padrão. Consulte Usar o Oracle Data Guard com a CLI do Banco de Dados.
  • Se seus bancos de dados principal e stand-by estiverem na mesma região, eles deverão usar a mesma VCN (rede virtual na nuvem).
  • Se os seus bancos de dados principal e stand-by estiverem em regiões distintas, você deverá parear as VCNs (redes virtuais na nuvem) de cada banco de dados. Consulte Pareamento Remoto de VCNs usando um RPC.
  • Os bancos de dados principal e stand-by podem estar em uma região diferente, mas devem estar no mesmo realm.
  • A senha SYS e a senha da wallet de TDE dos bancos de dados principal e standby devem ser iguais.
  • Um Data Guard entre regiões também será suportado se o banco de dados estiver usando o OCI Vault para chaves de TDE.
  • Configure as regras de segurança de entrada e saída para as sub-redes de ambos os sistemas de banco de dados na associação do Data Guard para permitir que o tráfego TCP passe pelas portas aplicáveis. Certifique-se de que as regras criadas sejam com monitoramento de estado (o padrão).

    Por exemplo, se a sub-rede do sistema de banco de dados principal usar o CIDR de origem 10.0.0.0/24 e a sub-rede do sistema de banco de dados stand-by usar o CIDR de origem 10.0.1.0/24, crie regras conforme mostrado no exemplo a seguir.

Observação:

As regras de saída no exemplo mostram como ativar o tráfego TCP apenas para a porta 1521, que é um requisito mínimo para que o Data Guard funcione. Se o tráfego TCP já estiver ativado em todas as portas de saída (0.0.0.0/0), não será necessário adicionar explicitamente essas regras de saída específicas.

Problemas Conhecidos

  • Em um Data Guard entre regiões, depois de executar um switchover, você não poderá rotacionar a chave KMS do Banco de Dados no novo banco de dados principal.
  • Em um Data Guard entre regiões, depois de executar um switchover, você não poderá criar um PDB no novo banco de dados principal.

Lista de Segurança para Sub-rede no Sistema de Banco de Dados Principal

Ingress Rules:
	Stateless: No
	Source: 10.0.1.0/24
	IP Protocol: TCPSource Port Range: All 
	Destination Port Range: 1521
	Allows: TCP traffic for ports: 1521

Egress Rules:
	Stateless: No
	Destination: 10.0.1.0/24 
	IP Protocol: TCP 
	Source Port Range: All
	Destination Port Range: 1521
	Allows: TCP traffic for ports: 1521	

Lista de Segurança para Sub-rede no Sistema de Banco de Dados Stand-by

Ingress Rules:	
	Stateless: No
	Source: 10.0.0.0/24 
	IP Protocol: TCP 
	Source Port Range: All 
	Destination Port Range: 1521
	Allows: TCP traffic for ports: 1521

Egress Rules:
	Stateless: No
	Destination: 10.0.0.0/24 
	IP Protocol: TCP 
	Source Port Range: All
	Destination Port Range: 1521
	Allows: TCP traffic for ports: 1521	

Para obter informações sobre como criar e editar regras, consulte Listas de Segurança.

Considerações sobre Domínio de Disponibilidade e Domínio de Falha para o Oracle Data Guard

A Oracle recomenda que o sistema de banco de dados que contém o banco de dados stand-by esteja em um domínio de disponibilidade distinto daquele do sistema de banco de dados que contém o banco de dados principal para melhorar a disponibilidade e a recuperação de desastre. Se você ativar o Oracle Data Guard para um banco de dados e seu banco de dados stand-by estiver no mesmo domínio de disponibilidade que o principal (por opção ou porque você está trabalhando em uma única região de domínio de disponibilidade), a Oracle recomenda que você coloque o banco de dados stand-by em um domínio de falha distinto do utilizado pelo banco de dados principal.

Observação:

Se os bancos de dados principal e stand-by forem bancos de dados Oracle RAC de dois nós e ambos estiverem no mesmo domínio de disponibilidade, apenas um dos dois nós do banco de dados stand-by poderá estar em um domínio de falha que não inclua outros nós do banco de dados principal ou stand-by. Isso acontece porque cada domínio de disponibilidade tem apenas três domínios de falha, e os bancos de dados principal e stand-by têm um total combinado de quatro nós. Para obter mais informações sobre domínios de disponibilidade e domínios de falha, consulte Regiões e Domínios de Disponibilidade.

Usar a API

Para obter informações sobre como usar a API e assinar solicitações, consulte APIs REST e Credenciais de Segurança. Para obter informações sobre SDKs, consulte Kits de Desenvolvimento de Software e Interface de Linha de Comando.

Use estas operações de API para gerenciar associações do Data Guard:

  • CreateDataGuardAssociation
  • GetDataGuardAssociation
  • ListDataGuardAssociations
  • SwitchoverDataGuardAssociation
  • FailoverDataGuardAssociation
  • ReinstateDataGuardAssociation
  • TerminateDbSystem

Para obter a lista completa de APIs do serviço Database, consulte Database Service API.