Argomento precedente: Recupero manualeArgomento successivo: Recupero da backup completi non in linea


Recupero di database con file di controllo mancanti o danneggiati

Se un file di controllo è stato perso o danneggiato, prima di recuperare il database è necessario innanzitutto chiudere il database, quindi recuperare i file di controllo. Per arrestare il database, recuperare i file di controllo ed il database, attenersi alla procedura riportata di seguito.

Per recuperare il database con i file di controllo persi o danneggiati procedere come segue

  1. Chiudere il database immettendo il seguente comando al prompt di SQL*Plus:
    SHUTDOWN;
    
  2. Al prompt corretto, avviare e montare il database, quindi iniziare il processo di recupero. Nel prompt di SQL*Plus immettere il comando seguente:
    CONNECT SYS/SYS_PASSWORD AS SYSDBA;
    STARTUP MOUNT;
    RECOVER DATABASE USING BACKUP CONTROLFILE;
    
  3. Verrà richiesto di immettere i nomi dei file di registro. Verranno prima cercati i file di registro archivio, quindi forniti automaticamente i nomi corretti dei file esistenti. Se i file di registro archivio necessari non vengono individuati, sarà necessario applicare manualmente i registri di ripristino in linea necessari.

    Quando si applicano manualmente i registri di ripristino in linea, è necessario fornire l'intero percorso e il nome del file. Se viene immesso un registro non corretto, immettere nuovamente il comando:

    RECOVER DATABASE USING BACKUP CONTROLFILE;
    

    Al prompt fornire il nome corretto dei file del registro di ripristino in linea. Continuare questa procedura fino a quando tutti i registri non sono stati correttamente applicati.

  4. Immettere il seguente comando al prompt SQL*Plus per riportare il database in linea e reimpostare i registri:
    ALTER DATABASE OPEN RESETLOGS;
    
  5. Accedere alla directory in cui sono memorizzati i registri di ripristino archiviati ed eliminare tutti i file di registro.
  6. Se gli spazi tabella risultano ancora non in linea, per riportarli in linea immettere il comando riportato di seguito al prompt SQL*Plus:
    ALTER TABLESPACE TABLESPACE_NAME ONLINE;
    
  7. Se si utilizza RMAN per recuperare il database completo con file di controllo di cui è già stato eseguito il backup, sincronizzare nuovamente le informazioni di database in RMAN in base al database appena recuperato. Per sincronizzare nuovamente le informazioni di database, procedere come segue:
    1. Accedere come oracle.
    2. Immettere il comando seguente per impostare il SID Oracle sul SID del database recuperato:
      ORACLE_SID=SID database
      
    3. Immettere il comando seguente per completare il processo:
      rman target dbuser/ dbuserpassword rcvcat
      catowner/catownerpassword@rman service name
      reset database
      

      dove:

      • dbuser è l'utente con privilegi dba per il database recuperato;
      • dbuserpassword è la password per dbuser.
      • catowner è il nome utente Oracle del proprietario del catalogo di Oracle Recovery Manager;
      • nome servizio rman è il nome del servizio utilizzato per accedere al database in cui è installato il catalogo RMAN.