Usa Oracle Data Guard su un sistema DB

Oracle Data Guard offre funzionalità di High Availability, protezione dei dati e disaster recovery per i dati enterprise.

L'implementazione di Data Guard richiede due database: uno in un ruolo primario e uno in un ruolo in standby. I due database, database primario e database di standby, insieme formano un'associazione Data Guard. La maggior parte delle applicazioni accede al database primario, mentre il database in standby è una copia coerente a livello di transazione del database primario.

Data Guard gestisce il database in standby mediante la trasmissione e l'applicazione di dati di redo dal database primario. Se il database primario non è più disponibile, puoi utilizzare Data Guard per passare o eseguire il failover del database di standby al ruolo primario.

Nota

I database in standby in OCI sono database in standby fisico.

In questo articolo viene descritto come utilizzare la console per gestire le associazioni Data Guard nel sistema DB.

Per ulteriori informazioni su Data Guard, vedere Introduzione a Oracle Data Guard.

Criterio IAM necessario

Per utilizzare Oracle Cloud Infrastructure, un amministratore deve concedere l'accesso di sicurezza in un criterio. Questo accesso è necessario se si utilizza la console o l'API REST con un SDK, un'interfaccia CLI o un altro strumento. Se viene visualizzato un messaggio che informa che non si dispone dell'autorizzazione o che non si è autorizzati, verificare con l'amministratore in quale tipo di accesso si dispone e in quale compartimento lavorare.

Se non si ha familiarità con i criteri, vedere Introduzione ai criteri e Criteri comuni.

Prerequisiti e informazioni generali

Un'implementazione Data Guard richiede due sistemi DB, uno contenente il database primario e uno contenente il database in standby. Quando si abilita Data Guard per un database, un nuovo sistema DB con il database di standby viene creato e associato al database primario.

Nota

Una configurazione Data Guard è limitata a un database in standby per ogni database primario.

I dettagli del requisito sono i seguenti:

  • Entrambi i sistemi DB devono trovarsi nello stesso compartimento.
  • Le versioni e le edizioni del database devono essere identiche. Per i database 23ai, i database primario e in standby devono avere la stessa versione della release principale, mentre il database in standby può avere una versione secondaria superiore.
  • Data Guard non supporta Oracle Database Standard Edition. (Active Data Guard richiede Enterprise Edition Extreme Performance).
  • Ogni database in un'associazione Data Guard deve avere un valore di nome univoco (DB_UNIQUE_NAME) non utilizzato da altri database nei sistemi DB che ospitano l'associazione Data Guard. Tuttavia, il database primario e in standby possono utilizzare lo stesso valore DB_NAME del nome database.
  • L'edizione del database determina se è possibile utilizzare Active Data Guard (ADG). ADG è disponibile solo con Enterprise Edition Extreme Performance. Se si utilizza il modello di licenza BYOL e la licenza non include ADG, è necessario assicurarsi che ADG non sia abilitato durante la configurazione di Data Guard per Enterprise Edition Extreme Performance. In alternativa, è possibile utilizzare Enterprise Edition o Enterprise Edition High Performance, che non abilitano ADG per impostazione predefinita. Vedere Usa Oracle Data Guard con l'interfaccia CLI del database.
  • Se i database primari e in standby si trovano nella stessa area, entrambi devono utilizzare la stessa rete cloud virtuale (VCN).
  • Se i database primari e in standby si trovano in aree diverse, devi eseguire il peer delle reti cloud virtuali (VCN) per ogni database. Vedere Peering VCN remoto utilizzando un RPC.
  • I database primari e in standby possono trovarsi in un'area diversa, ma devono trovarsi nello stesso realm.
  • La password SYS e la password del wallet TDE dei database primario e in standby devono essere tutte uguali.
  • È supportato anche un Data Guard tra più aree se il database utilizza OCI Vault per le chiavi TDE.
  • Configurare le regole di entrata e uscita della lista di sicurezza per le subnet di entrambi i sistemi DB nell'associazione Data Guard per abilitare lo spostamento del traffico TCP tra le porte applicabili. Assicurarsi che le regole create siano con conservazione dello stato (impostazione predefinita).

    Ad esempio, se la subnet del sistema DB primario utilizza il CIDR di origine 10.0.0.0/24 e la subnet del sistema DB di standby utilizza il CIDR di origine 10.0.1.0/24, creare le regole come mostrato nell'esempio successivo.

Nota

Le regole di uscita nell'esempio mostrano come abilitare il traffico TCP solo per la porta 1521, che è un requisito minimo per il funzionamento di Data Guard. Se il traffico TCP è già abilitato in tutte le porte in uscita (0.0.0.0/0), non è necessario aggiungere in modo esplicito queste regole di uscita specifiche.

Problemi noti

  • In un Data Guard tra più aree, dopo aver eseguito uno switchover, non è possibile ruotare la chiave KMS del database nel nuovo database primario.
  • In un Data Guard tra più aree, dopo aver eseguito uno switchover, non è possibile creare un PDB nel nuovo database primario.

Lista di sicurezza per la subnet nel sistema DB primario

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 di sicurezza per la subnet nel sistema DB in standby

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	

Per informazioni sulla creazione e la modifica di regole, vedere Elenchi di sicurezza.

Considerazioni sul dominio di disponibilità e sul dominio di errore per Oracle Data Guard

Oracle consiglia che il sistema DB che contiene il database di standby si trovi in un dominio di disponibilità diverso da quello del sistema DB che contiene il database primario per migliorare la disponibilità e il recupero da errori irreversibili. Se si abilita Oracle Data Guard per un database e il database di standby si trova nello stesso dominio di disponibilità del database primario (per scelta o perché si sta lavorando in una singola area del dominio di disponibilità), Oracle consiglia di posizionare il database di standby in un dominio di errore diverso da quello del database primario.

Nota

Se i database primari e in standby sono database Oracle RAC a due nodi ed entrambi si trovano nello stesso dominio di disponibilità, solo uno dei due nodi del database in standby può trovarsi in un dominio di errore che non include altri nodi del database primario o in standby. Questo perché ogni dominio di disponibilità ha solo tre domini di errore e i database primario e in standby hanno un totale combinato di quattro nodi. Per ulteriori informazioni sui domini di disponibilità e sui domini di errore, vedere Aree e domini di disponibilità.

Utilizzare l'API

Per informazioni sull'uso dell'API e delle richieste di firma, vedere API REST e Credenziali di sicurezza. Per informazioni sugli SDK, vedere Software Development Kits and Command Line Interface.

Utilizzare le operazioni API riportate di seguito per gestire le associazioni Data Guard.

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

Per la lista completa delle interfacce API per il servizio di database, vedere API del servizio di database.