Dicembre 3, 2021

3 Creazione di un database di standby fisico

Questo capitolo spiega come creare un database di standby fisico e iniziare ad applicare redo log ad esso. Questo capitolo include i seguenti argomenti principali:

  • Lista di controllo delle attività
  • Creazione di un database standby: attività di base
  • Creazione dei file di database standby
  • Creazione del file dei parametri di inizializzazione standby

3.1 Lista di controllo delle attività

La tabella 3-1 fornisce una lista di controllo delle attività eseguite per creare un database di standby e sincronizzarlo in modo che sia pronto per iniziare il ripristino gestito. Ogni passaggio include un riferimento a una sezione che fornisce informazioni aggiuntive.


Nota:

Utilizzare la Creazione guidata di configurazione fornita con Oracle9i Data Guard Manager per eseguire automaticamente tutti i passaggi descritti in questo capitolo.

Tabella 3-1 Elenco attività: Preparazione per il recupero gestito
Passo Attività Sito Riferimento

Effettuare un nuovo backup dei file di dati del database primario o accedere a un vecchio backup.

Primario

Sezione 3.3.2

Verificare che il database primario sia in modalità ARCHIVELOG.

Primario

Sezione 3.3.3

Connettersi al database principale e creare il file di controllo standby.

Primario

Sezione 3.3.3

Copiare i file di dati di backup e il file di controllo standby dal sito principale al sito di standby.

Primario

Sezione 3.3.4

Impostare i parametri di inizializzazione per il database primario.

Primario

Sezione 5.6.3

Creare il file dei parametri di inizializzazione standby e impostare i parametri di inizializzazione per il database standby. A seconda della configurazione, potrebbe essere necessario impostare i parametri di conversione del nome file.

Primario o standby

Sezione 5.6.1 e Sezione 6.3.4

Utilizzare Oracle Net Manager per creare un nome di servizio netto che il database standby può utilizzare per connettersi al database primario. Il nome del servizio net deve essere risolto in un descrittore connect che utilizza lo stesso protocollo, indirizzo host, porta e SID specificati quando è stato configurato il listener nel sito del database primario. Se non si è sicuri dei valori da utilizzare per questi parametri, eseguire Oracle Net Manager nel sito del database principale per visualizzare la configurazione del listener.

In attesa

Oracle9i Net Services Guida dell’amministratore

Utilizzare Oracle Net Manager per creare un nome di servizio net che il database primario può utilizzare per connettersi al database di standby. Il nome del servizio net deve essere risolto in un descrittore connect che utilizza lo stesso protocollo, indirizzo host, porta e SID specificati quando è stato configurato il listener nel sito del database di standby. Se non si è sicuri dei valori da utilizzare per questi parametri, eseguire Oracle Net Manager nel sito del database standby per visualizzare la configurazione del listener.

Primario

Oracle9i Net Services Guida dell’amministratore

Utilizzare Oracle Net Manager per configurare un listener nel database di standby. Se si prevede di gestire questo database di standby utilizzando il Data Guard broker, è necessario configurare il listener per utilizzare il protocollo TCP/IP e registrare staticamente il servizio di database di standby utilizzando il relativo SID.

In attesa

Oracle9i Net Services Guida dell’amministratore

Avviare l’istanza standby e montare il database standby.

In attesa

Sezione 6.3.2

Creare file di log di ripetizione in standby, se necessario.

In attesa

Sezione 5.8.4

Modificare manualmente i nomi dei file di dati primari e ripetere i registri nel file di controllo standby per tutti i file non rinominati automaticamente utilizzando DB_FILE_NAME_CONVERT e LOG_FILE_NAME_CONVERT come indicato nel passaggio 6.

In attesa

Sezione B. 4

Arrestare e riavviare il listener nel database primario e avviare il listener nel database standby.

Primario e standby

Oracle9i Net Services Guida dell’amministratore

Abilitare manualmente le modifiche dei parametri di inizializzazione nel database primario in modo che possa avviare l’archiviazione nel sito di standby.

Primario

Sezione 5.3.2.2

3.2 Creazione di un database di standby: attività di base

L’impostazione di un database di standby per il ripristino gestito richiede l’esecuzione di una serie di attività diverse. Dopo aver completato la preparazione e avviato il ripristino gestito, il database di standby applica automaticamente e in modo continuo i registri di ripetizione man mano che vengono ricevuti dal database primario. Figura 3-1 mostra la creazione di un database di standby.

Figura 3-1 Creazione di database standby

 Descrizione testuale di sbr81101.gif segue.

Descrizione testuale dell’illustrazione sbr81101.gif

3.3 Creazione dei file di database di standby

È possibile creare un database di standby sullo stesso sito del database principale o su un sito separato. Se si crea il database di standby sullo stesso sito, seguire attentamente la procedura di creazione durante la creazione dei file di database di standby in modo da non sovrascrivere i file sul database principale.

La creazione dei file di database in standby avviene in quattro fasi:

  1. Utilizzo dei backup per la creazione di standby
  2. Creazione dei file di dati di standby
  3. Creazione del file di controllo standby
  4. Copia dei file nel sito di standby

3.3.1 Utilizzo dei backup per la creazione di standby

Ogni database di standby deve essere creato da un backup del database primario.


Nota:

Per proteggersi dalle scritture dirette non registrate nel database primario che non possono essere propagate al database di standby, attivare FORCE LOGGING nel database primario prima di eseguire i backup dei file di dati per la creazione di standby. Mantenere il database (o almeno i tablespace importanti) in modalità FORCE LOGGING finché il database di standby è attivo.

È inoltre possibile utilizzare un singolo backup del database primario per creare fino a nove database di standby, anche se i vari database di standby nell’ambiente non devono essere creati dallo stesso backup. (È possibile creare un numero illimitato di database di standby, ma un singolo database primario può supportare solo fino a nove database di standby alla volta.) Figura 3-2 mostra che è possibile creare un database di standby da un backup del database primario preso il 20 gennaio e creare un altro database di standby dal backup preso il 20 giugno. Finché sono necessari i registri di ripetizione archiviati per eseguire il ripristino completo di un backup, può servire come base per un database di standby.

Figura 3-2 Creazione di database di standby utilizzando diversi backup

Descrizione testuale di sbr81104.gif segue.

Descrizione testuale dell’illustrazione sbr81104.gif

3.3.2 Creazione dei file di dati in standby

In primo luogo, eseguire il backup dei file di dati del database primario. È possibile creare i file di dati in standby da questi backup.

È possibile utilizzare qualsiasi backup del database primario a condizione che siano stati archiviati i registri redo per ripristinare completamente il database. Il backup può essere vecchio o nuovo, coerente o incoerente. I backup a caldo (o backup aperti) consentono di mantenere aperto il database durante l’esecuzione del backup. Tuttavia, è preferibile eseguire un nuovo backup chiuso e coerente utilizzando l’utilità Recovery Manager (RMAN) per impedire l’applicazione di un numero elevato di log di ripristino archiviati.

Per creare un backup coerente e completo del database da utilizzare come base per il database di standby:

  1. Avviare una sessione SQL sul database primario e interrogare la vista fissa V$DATAFILE per ottenere un elenco dei file di dati primari. Ad esempio, immettere:
    SQL> SELECT NAME FROM V$DATAFILE;NAME ----------------------------------------------------------------------------/oracle/dbs/tbs_01.dbf/oracle/dbs/tbs_02.dbf/oracle/dbs/tbs_03.dbf/oracle/dbs2/tbs_11.dbf /oracle/dbs2/tbs_12.dbf/oracle/dbs3/tbs_21.dbf/oracle/dbs3/tbs_22.dbf 7 rows selected.
  2. Chiudere il database primario in modo pulito:
    SQL> SHUTDOWN;
  3. Eseguire un backup coerente dei file di dati dal database principale utilizzando l’utilità Recovery Manager (RMAN) o un’utilità del sistema operativo.
  4. Riapre il database primario. Ad esempio, immettere:
    SQL> STARTUP PFILE=initPRIMARY1.ora;

    Vedi anche:

    Oracle9i Recovery Manager Guida per l’utente per imparare a creare un database di standby con Recovery Manager

3.3.3 Creazione del file di controllo standby

Dopo aver creato i backup che verranno utilizzati come file di dati standby, è possibile creare il file di controllo del database standby. Il file di controllo deve essere creato dopo l’ultimo timestamp per i file di dati di backup.


Nota:

Non è possibile utilizzare un singolo file di controllo per entrambi i database primario e standby. L’istanza standby è indipendente dall’istanza primaria e quindi richiede il possesso esclusivo dei suoi file di database.

Per creare il file di controllo del database di standby:

  1. Verificare che il database primario sia in modalità ARCHIVELOG e che l’archiviazione sia abilitata. Emettere il comando SQL*Plus ARCHIVE LOG LIST o interrogare la vista V$DATABASE. Procedere come segue:
    1. Avviare e montare il database primario senza aprirlo. Ad esempio:
      SQL> STARTUP MOUNT PFILE=initPRIMARY1.ora
    2. Eseguire il comando SQL * Plus ARCHIVE LOG LIST per determinare se il database è in modalità ARCHIVELOG. Biru:
      SQL> ARCHIVE LOG LIST;Database log mode No Archive ModeAutomatic archival DisabledArchive destination /oracle/dbs/archOldest online log sequence 0Current log sequence 1
    3. Se il database non è in modalità ARCHIVELOG, come mostrato nel passaggio b, eseguire il seguente comando per posizionare il database in modalità ARCHIVELOG:
      SQL> ALTER DATABASE ARCHIVELOG;
    4. È possibile eseguire nuovamente il comando SQL*Plus ARCHIVE LOG LIST per verificare che il database sia stato inserito in modalità ARCHIVELOG. Ad esempio:
      SQL> ARCHIVE LOG LIST;Database log mode Archive ModeAutomatic archival DisabledArchive destination /oracle/dbs/archOldest online log sequence 0Next log sequence to archive 1Current log sequence 1

    Per abilitare l’archiviazione automatica dei log redo online, è necessario impostare LOG_ARCHIVE_START=true nel file dei parametri di inizializzazione. Tuttavia, questo non deve essere fatto prima di creare il file di controllo standby.

    Vedi anche:

    Guida per l’utente SQL * Plus e riferimento per ulteriori informazioni sul comando ARCHIVE LOG LIST e sulla Guida dell’amministratore del database Oracle9i per ulteriori informazioni sull’istruzione ALTER DATABASE ARCHIVELOG e sul parametro di inizializzazione LOG_ARCHIVE_START

  2. Connettersi al database principale e creare il file di controllo per il database di standby. Ad esempio, per creare il file di controllo standby come /oracle/dbs/stbycf.ctl nel sito principale, immettere quanto segue:
    SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/oracle/dbs/stbycf.ctl';

    Il nome del file di controllo standby creato deve essere diverso dal nome del file di controllo corrente del database primario. È inoltre possibile utilizzare RMAN per creare il file di controllo del database di standby.


    Vedi Anche:

    Oracle9i SQL di Riferimento per ulteriori informazioni su ALTER DATABASE istruzione e Oracle9i Recovery Manager Guida dell’Utente per ulteriori informazioni su RMAN

3.3.4 Copia di File di Attesa, il Sito

Dopo aver creato l’attesa di file di dati e file di controllo, copiare i file di attesa, il sito utilizza un sistema operativo utilità.

Se il database di standby è Allora

Un sito separato con la stessa struttura di directory del database primario

Possibile utilizzare gli stessi nomi di percorso per l’attesa di file come i file primari. In questo modo, non è necessario rinominare i file di dati primari nel file di controllo standby.

Lo stesso sito del database primario o il database di standby si trova in un sito separato con una struttura di directory diversa

È necessario rinominare i file di dati primari nel file di controllo standby dopo averli copiati nel sito di standby. Puoi:

  • Impostare i parametri di inizializzazione della conversione del nome file. Vedere Paragrafo 6.3.4.
  • Rinominare i file manualmente utilizzando ALTER DATABASE istruzioni. Vedere Paragrafo B. 4.
  • Utilizzare una combinazione di parametri di conversione e rinomine manuali.

Utilizzare i comandi o le utilità del sistema operativo per eseguire le seguenti operazioni di copia nella posizione di standby:

  1. Copiare il file di controllo standby.
  2. Copiare i file di dati di backup.
  3. Copiare tutti i registri di ripristino archiviati disponibili nel sito di standby.
  4. Copia i log redo online. Questo è consigliato per le operazioni di switchover e failover.

Non copiare tablespace temporanei. Utilizzare un metodo appropriato per copiare i file binari.


Vedere anche:

Sezione 6.3.6 per ulteriori informazioni sulla creazione di tablespace temporanei e Sezione 10.1.2 per uno scenario che mostra come copiare i file in un sito di standby

3.4 Creazione del file del parametro di inizializzazione standby

Una volta configurato il file del parametro di inizializzazione del database primario, è possibile duplicare il file per l’utilizzo da parte del database standby. La procedura per la creazione del file del parametro di inizializzazione standby è la seguente:

  1. Copiare il file dei parametri di inizializzazione per il database primario utilizzando un’utilità del sistema operativo.
  2. Modificare il file dei parametri di inizializzazione per l’utilizzo da parte del database di standby.
  3. Trasferire il file del parametro di inizializzazione al sito di standby utilizzando un’utilità del sistema operativo appropriata.
    Vedere anche:

    Sezione 5.6.1, Sezione 6.3.4 e Sezione 10.1.2

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.