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 valorDB_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.