Convalida prontezza DR

Esaminare le procedure ottimali per la preparazione al ripristino delle catastrofi e verificare l'impostazione del ripristino delle catastrofi per eventi pianificati e non pianificati.

Informazioni sulla disponibilità DR

Esaminare le migliori pratiche per la prontezza al recupero delle catastrofi (DR).

Utilizzare Active Data Guard per scaricare il carico di lavoro di sola lettura nel database in standby per fornire la convalida continua a livello di applicazione che lo standby è pronto per la produzione. Ciò fornisce un livello di garanzia oltre alla convalida continua a livello di blocco di Oracle eseguita dai processi di applicazione di Oracle Data Guard.

Utilizzare un database in standby snapshot per creare una replica esatta di un database di produzione a scopo di sviluppo e test. Posizionare periodicamente il database in standby in modalità lettura/scrittura (utilizzando lo standby snapshot Data Guard) per convalidarne la disponibilità a supportare i carichi di lavoro di produzione in lettura/scrittura. È inoltre possibile utilizzare uno standby snapshot per un livello finale di test funzionali e prestazioni delle patch e degli aggiornamenti poiché la dimensione del sistema DR è simile al sistema di produzione. Un database in standby snapshot continua a ricevere redo dal database primario in cui viene archiviato per un uso successivo, che fornisce sempre la protezione dei dati. Tuttavia, il tempo di recupero (RTO) verrà esteso del tempo necessario per convertire lo standby snapshot nel database in standby se è necessario un failover durante il test in corso. È necessaria una memoria aggiuntiva per l'area di recupero rapido quando un database in standby è in modalità snapshot (per contenere i redo archiviati ricevuti dal database di produzione primario per un uso successivo e i redo log e flashback correnti generati dallo standby snapshot).

Di seguito sono riportati alcuni dei vantaggi derivanti dall'utilizzo di un database in standby snapshot.

  • Fornisce una replica esatta di un database di produzione per lo sviluppo e il test pur mantenendo la protezione dei dati in ogni momento. È possibile utilizzare l'opzione Oracle Real Application Testing per acquisire il carico di lavoro del database primario, quindi ripeterlo a scopo di test nel database in standby snapshot.
  • È facilmente aggiornabile per contenere i dati di produzione correnti convertendoli in standby fisico e risincronizzandoli.

Converte il database in standby in uno standby snapshot

Quando si desidera una replica esatta di un database di produzione, è possibile utilizzare Oracle Data Guard Broker per convertire il database in standby fisico in un database in standby snapshot e convalidare il failover.

Uno standby snapshot è un database in standby completamente aggiornabile creato da un database in standby fisico. Nei database in standby snapshot vengono ricevuti i dati redo, ma non vengono applicati finché il database in standby snapshot non viene convertito in un database in standby fisico.

Di seguito sono riportati alcuni vantaggi nell'utilizzo di un database in standby snapshot.

  • Lo standby snapshot fornisce una replica esatta di un database di produzione a scopo di sviluppo e test, mantenendo sempre la protezione dei dati. È possibile utilizzare l'opzione Oracle Real Application Testing per acquisire il carico di lavoro del database primario, quindi ripeterlo a scopo di test nel database in standby snapshot.
  • È possibile aggiornare facilmente il database in standby snapshot per contenere i dati di produzione correnti mediante la conversione in standby fisico e la risincronizzazione.

L'interfaccia della riga di comando Oracle Data Guard (DGMGRL) consente di gestire una configurazione del broker Oracle Data Guard e i relativi vari membri direttamente dall'interfaccia della riga di comando.

  1. Eseguire il login a una sessione DGMGRL nell'istanza di database in standby con il nome utente e la password sys.
    [oracle@exa11db01 ~]$ dgmgrl
    DGMRGL> connect
    Username: sys
    Password:
  2. Visualizzare la configurazione per confermare i database primario e in standby.
    DGMGRL> show configuration;
    L'output sarà simile a quanto segue:
    Configuration - onpremexadr
      Protection Mode: MaxPerformance
      Members:
      db1_phx3g7 - Primary database
        db1        - Physical standby database 
          Error: ORA-16664: unable to receive the result from a member
    Fast-Start Failover:  Disabled
    Configuration Status:
    ERROR   (status updated 108 seconds ago)
  3. Convertire il database in standby fisico in un database in standby snapshot.
    In questo esempio, standby_database_unique_name è db1.
    DGMGRL> convert database standby_database_unique_name to snapshot standby;
    Al termine della conversione, l'output avrà una linea simile a quella riportata di seguito.
    Converting database "db1" to a Snapshot Standby database, please wait...
    Database "db1" converted successfully
  4. Visualizzare la configurazione per verificare la conversione.
    DGMGRL> show configuration;
    L'output sarà simile a quanto segue:
    Configuration - onpremexadr
      Protection Mode: MaxPerformance
      Members:
      db1_phx3g7 - Primary database
        db1        - Snapshot standby database 
          Error: ORA-16664: unable to receive the result from a member
    Fast-Start Failover:  Disabled
    Configuration Status:
    ERROR   (status updated 59 seconds ago)
  5. Convertire di nuovo lo standby snapshot in un database in standby fisico.
    DGMGRL> convert database standby_database_unique_name to physical standby;
    L'output sarà simile a quanto segue:
    Converting database "db1" to a Physical Standby database, please wait...
    Operation requires a connection to database "db1_phx3g7"
    Connecting ...
    Connected to "DB1_phx3g7"
    Connected as SYSDBA.
    Oracle Clusterware is restarting database "db1" ...
    Connected to "db1"
    Connected to "db1"
    Continuing to convert database "db1" ...
    Database "db1" converted successfully
  6. Visualizzare la configurazione per verificare la conversione.
    DGMGRL> show configuration;
    L'output sarà simile a quanto riportato di seguito.
    Configuration - onpremexadr
      Protection Mode: MaxPerformance
      Members:
      db1_phx3g7 - Primary database
        db1        - Physical standby database 
          Error: ORA-16664: unable to receive the result from a member
    
    Fast-Start Failover:  Disabled
    
    Configuration Status:
    ERROR   (status updated 20 seconds ago)
    DGMGRL>

Impostare i parametri Oracle Data Guard

Prima di eseguire uno switchover, impostare i parametri Oracle Data Guard sulle istanze di database primario e in standby.

  1. Nel database primario in locale, controllare il numero di modifica del sistema (SCN).
    select standby_became_primary_scn from v$database;
    L'output sarà simile a quanto riportato di seguito.
    STANDBY_BECAME_PRIMARY_SCN
    --------------------------
    0
  2. Verificare che il flashback non sia abilitato nel database primario.
    select flashback_on from v$database;
    L'output sarà simile a quanto riportato di seguito.
    FLASHBACK_ON
    ------------------
    NO
  3. Visualizza il recupero dei parametri.
    SQL> show parameter recovery;
    L'output sarà simile a quanto riportato di seguito.
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    db_recovery_file_dest	     string	      +RECOC1
    db_recovery_file_dest_size	big integer	  8256M
    recovery_parallelism             integer             0
    remote_recovery_file_dest        string
  4. Impostare la dimensione del parametro DB_RECOVERY_FILE_DEST_SIZE per soddisfare la dimensione del database.
    L'esempio seguente utilizza 20G come dimensione dei dati di esempio. Impostare la dimensione dei dati in base al database.
    SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE=20G;
  5. Abilita flashback sul database primario.
    SQL> alter database flashback on;
  6. Confermare che il flashback del database sia abilitato (su).
    SQL> select flashback_on from v$database;
    L'output sarà simile a quanto segue:
    FLASHBACK_ON
    ------------------
    YES
  7. In Oracle Database Exadata Cloud Service in standby determinare se il flashback è abilitato.
    SQL> select flashback_on from v$database;
    L'output sarà simile a quanto segue:
    FLASHBACK_ON
    ------------------
    NO
  8. Eseguire una query sullo stato della modalità aperta per il database in standby nel cloud.
    SQL> select open_mode from v$database;
    L'output sarà simile a quanto segue:
    OPEN_MODE
    -------------------- 
    MOUNTED
  9. Annulla il recupero del database per il database in standby.
    SQL> alter database recover managed standby database cancel;
  10. Impostare il flashback sull'istanza di database nel cloud.
    SQL> alter database flashback on;
  11. Disconnettere lo standby dalla sessione.
    SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
    Database altered
  12. Confermare che il flashback del database sia abilitato (su).
    SQL> select flashback_on from v$database;
    FLASHBACK_ON
    ------------------
    YES
  13. Visualizza i parametri di conservazione.
    SQL> show parameter_retention;
    L'output sarà simile a quanto segue:
    NAME				     TYPE	 VALUE
    ------------------------------------ ----------- ------------------------------
    db_flashback_retention_target	     integer	 1440
    undo_retention			      integer	 900