Pulizia del catalogo
RMAN> CROSSCHECK BACKUP;
RMAN> DELETE [NOPROMPT] EXPIRED BACKUP;
Il comando CROSSCHECK viene utilizzato per determinare se i backup registrati nel repository sono ancora presenti su disco o nastro; assicura che i record logici dei backup sono sincronizzati con i file fisici. Se RMAN non è in grado di individuare i backup, aggiorna i loro record nel repository di RMAN allo stato "EXPIRED".
Se i file scaduti esistono ancora, il comando DELETE EXPIRED termina con un errore.
Il comando DELETE cancella sia file fisici che il record sul file di catalogo.
Esistono due parametri mutuamenti esclusivi che definiscono la retention policy:
Il comando DELETE cancella sia file fisici che il record sul file di catalogo.
Per individuare i backup obsoleti ovvero quelli che non soddisfano i requisiti di RMAN specificati nella retention policy e quindi non servono più per un recovery eseguire i comandi:
RMAN> CROSSCHECK BACKUP;
RMAN> REPORT OBSOLETE;
RMAN> DELETE [NOPROMPT]OBSOLETE;
Eseguire sempre prima il comando crosscheck backup per assicurarsi che RMAN abbia le ultime informazioni sullo stato dei differenti tipi di backup.
Report dei file obsoleti che non soddifano una recovery window di 3 giorni.
RMAN> report obsolete recovery window of 3 days;
Report dei file obsoleti che non soddifano una redundancy di 3 copie.
RMAN> report obsolete redundancy 2;
Esistono due parametri mutuamenti esclusivi che definiscono la retention policy:
- Redundancy
RMAN> configure retention policy to redundancy 2;
Vuol dire che vengono conservate due backup full o Level 0 del database e le restanti sono marchate come obsolete.
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
Recovery window e Redundancy si escludono a vicenda.
L'operazione di DELETE conssite nei seguenti tre comandi:
1) RMAN cancella i file fisici di backup dal sistema operativo e dal tape
2) RMAN li marca come "deleted" nel control file
Updating a Backup to Status AVAILABLE or UNAVAILABLERMAN> list controlfilecopy '/home/oracle/backup/control01.ctl';
List of Control File Copies
===========================
Key S Completion Time Ckp SCN Ckp Time
------- - - -------------- ---------- ---------------
2947 A 01-MAR-21 2689453 01-MAR-21
Name: /home/oracle/backup/control01.ctl
Tag: TAG20210301T102827
RMAN> CHANGE CONTROLFILECOPY '/home/oracle/backup/control01.ctl' UNAVAILABLE;
RMAN> list controlfilecopy '/home/oracle/backup/control01.ctl';
List of Control File Copies
===========================
Key S Completion Time Ckp SCN Ckp Time
------- - --------------- ---------- ---------------
2947 U 01-MAR-21 2689453 01-MAR-21
Name: /home/oracle/backup/control01.ctl
Tag: TAG20210301T102827
Analogo discorso per i backupset e spfile.
RMAN> CHANGE BACKUPSET &BS_KEY& UNAVAILABLE;
RMAN> CHANGE BACKUP OF SPFILE TAG 'KEEP_ONE_YEAR' UNAVAILABLE;
RMAN> CHANGE BACKUP TAG 'KEEP_ONE_YEAR' AVAILABLE;
Indica il numero di backup full o di livello 0 che devono essere disponibili contemporaneamente. Dopo aver selezionato il numero di copie di backup, tutti i backup più vecchi vengono contrassegnati come obsoleti. Ciò non pone alcun tipo di restrizione sulla durata di conservazione dei backup.
RMAN> configure retention policy to redundancy 2;
Vuol dire che vengono conservate due backup full o Level 0 del database e le restanti sono marchate come obsolete.
Il valore di default vale 1.
- Recovery Window
non si basa sul numero di copie di backup, ma sul numero di giorni per i quali si desidera avrer un backup ripristinabile. Quindi è possibile disporre di un numero n di copie entro il periodo specificato della finestra di ripristino. Qualsiasi backup più vecchio della finestra di ripristino è contrassegnato come obsoleto. Il valore di default è 7 giorni, il che significa che possono ripristinare un qualsisasi backup entro sette giorni da oggi.
Ad esempio se si dispone di un backup full nei giorni 8, 15 e 22 ed oggi è 25, RMAN considera la finestra di recovery di 7 giorni fino al 18. Ma se volessimo ripristinare il backup del 18 occorrerebbe partire dal bacup full del 15 e prendere gli archivelog fino al 18. Questo vuol dire che Rman per assicurare un riprisitino completo di 7 giorni dovrà conservare anche il backup full del 15, e cioè il primo backup full al di fuori della recovery windows, e tutti gli archivelog che servono per avere un backup completo del db all'interno della finestra di recovery.
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
Recovery window e Redundancy si escludono a vicenda.
Eseguire il comando seguende per individuare la policy.
RMAN> show retention policy;
Per impostare il valori di default:
RMAN> CONFIGURE RETENTION POLICY CLEAR;
1) RMAN cancella i file fisici di backup dal sistema operativo e dal tape
2) RMAN li marca come "deleted" nel control file
3) RMAN li rimuove logicamente dal recovery catalog
RMAN> CROSSCHECK COPY OF DATABASE;
RMAN> LIST BACKUP;
RMAN> CROSSCHECK BACKUPSET &BS_KEY&;
RMAN> CROSSCHECK BACKUPPIECE TAG 'nomte tag';
RMAN> CROSSCHECK BACKUP OF ARCHIVELOG ALL SPFILE;
Controllo dei datafileRMAN> CROSSCHECK DATAFILECOPY ALL;
CURRENT CONTROLFILE
FORMAT '/home/oracle/backups/control01.ctl';
Altri comandi simili.
RMAN> CROSSCHECK ARCHIVELOG ALL;
RMAN> CROSSCHECK COPY;
RMAN> CROSSCHECK BACKUPSET &BS_KEY&;
RMAN> CROSSCHECK BACKUPPIECE TAG 'nomte tag';
RMAN> CROSSCHECK BACKUP OF ARCHIVELOG ALL SPFILE;
RMAN> CROSSCHECK BACKUP OF DATAFILE '/u01/app/oracle/oradata/orcl/pdb1/users01.dbf';
Facciamo una copia del control file all'interno di una direcorty
RMAN> BACKUP AS COPY CURRENT CONTROLFILE
FORMAT '/home/oracle/backups/control01.ctl';
RMAN> CROSSCHECK CONTROLFILECOPY '/home/oracle/backup/control01.ctl';
List of Control File Copies
===========================
Key S Completion Time Ckp SCN Ckp Time
------- - - -------------- ---------- ---------------
2947 A 01-MAR-21 2689453 01-MAR-21
Name: /home/oracle/backup/control01.ctl
Tag: TAG20210301T102827
Il valore S=A vuol dire available
RMAN> list controlfilecopy '/home/oracle/backup/control01.ctl';
List of Control File Copies
===========================
Key S Completion Time Ckp SCN Ckp Time
------- - --------------- ---------- ---------------
2947 U 01-MAR-21 2689453 01-MAR-21
Name: /home/oracle/backup/control01.ctl
Tag: TAG20210301T102827
RMAN> CHANGE CONTROLFILECOPY '/home/oracle/backup/control01.ctl' AVAILABLE;
Analogo discorso per i backupset e spfile.
RMAN> CHANGE BACKUPSET &BS_KEY& UNAVAILABLE;
RMAN> CHANGE BACKUP OF SPFILE TAG 'KEEP_ONE_YEAR' UNAVAILABLE;
RMAN> CHANGE BACKUP TAG 'KEEP_ONE_YEAR' AVAILABLE;