Hot backup met recovery manager zonder catalog Als er wordt besloten om geen catalog te gebruiken, gebruikt rman de control file van de target database om zijn informatie over de backup en recovery op te slaan. C:\Oracle_8i>rman target / nocatalog Recovery Manager: versie 8.1.7.4.1 - Production RMAN-06005: Verbonden met doeldatabase: OATST01 (DBID=2751951551). RMAN-06009: Control-bestand van doeldatabase wordt gebruikt in plaats van herstelcatalogus. RMAN> Alleerst de huidige controlfile backupen RMAN> run { 2> allocate channel dev1 type disk format 'c:\oracle_8i\oradata\backup_nocatalog\%U'; 3> backup current controlfile; } RMAN-03022: Opdracht wordt gecompileerd: allocate. RMAN-03023: Opdracht wordt uitgevoerd: allocate. RMAN-08030: Kanaal is toegewezen: dev1. RMAN-08500: kanaal dev1: sid=16 apparaattype=DISK RMAN-03022: Opdracht wordt gecompileerd: backup. RMAN-03023: Opdracht wordt uitgevoerd: backup. RMAN-08008: Kanaal dev1: backupset van gegevensbestand full wordt opgestart. RMAN-08502: set_count=1 set_stamp=564071408 creation_time=19-07-05 RMAN-08010: Kanaal dev1: gegevensbestand(en) in backupset worden gespecificeerd. RMAN-08011: Huidig control-bestand wordt opgenomen in backupset. RMAN-08013: Kanaal dev1: onderdeel 1 is aangemaakt. RMAN-08503: handle voor onderdeel=C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\01GPU2VG_1_1 opmerking=NONE RMAN-08525: instellen backup voltooid, verstreken tijd: 00:00:02. RMAN-08031: Kanaal is vrijgegeven: dev1. Volgende bestand is aangemaakt in de backup directory :01GPU2VG_1_1 Controleren van de gemaakte backup RMAN> list backup of controlfile; RMAN-03022: Opdracht wordt gecompileerd: list. Lijst van backupsets. Sleutel Record-ID Stempel Niveau Stempel instellen Aantal instellen Voltooiingstijd ------- ---------- ---------- -- ---------- ---------- ---------------------- 1 1 564071409 0 564071408 1 19-07-05 Lijst van backuponderdelen. Sleutel Ond.nr. CKP-nr. Status Voltooiingstijd Onderdeelnaam ------- --- --- ----------- ---------------------- ------------------------ 1 1 1 AVAILABLE 19-07-05 C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\01GPU2V G_1_1 Control-bestand opgenomen CKP-SCN CKP-tijd ---------- --------------- 492820 19-07-05 Om een volledige backup te maken inclusief controlfile RMAN> run { 2> allocate channel dev type disk; 3> backup full tag = 'full backup' database include current controlfile format = 'c:\oracle_8i\ora ta\backup_nocatalog\db_t%t_s%s_p%p'; release channel dev1; } RMAN-03022: Opdracht wordt gecompileerd: allocate. RMAN-03023: Opdracht wordt uitgevoerd: allocate. RMAN-08030: Kanaal is toegewezen: dev. RMAN-08500: kanaal dev: sid=16 apparaattype=DISK RMAN-03022: Opdracht wordt gecompileerd: backup. RMAN-03023: Opdracht wordt uitgevoerd: backup. RMAN-08008: Kanaal dev: backupset van gegevensbestand full wordt opgestart. RMAN-08502: set_count=2 set_stamp=564072044 creation_time=19-07-05 RMAN-08010: Kanaal dev: gegevensbestand(en) in backupset worden gespecificeerd. RMAN-08522: invoer gegevensbestand fno=00001 naam=C:\ORACLE_8I\ORADATA\OATST01\SYSTEM01.DBF. RMAN-08011: Huidig control-bestand wordt opgenomen in backupset. RMAN-08522: invoer gegevensbestand fno=00002 naam=C:\ORACLE_8I\ORADATA\OATST01\RBS01.DBF. RMAN-08522: invoer gegevensbestand fno=00003 naam=C:\ORACLE_8I\ORADATA\OATST01\USERS01.DBF. RMAN-08522: invoer gegevensbestand fno=00004 naam=C:\ORACLE_8I\ORADATA\OATST01\TEMP01.DBF. RMAN-08522: invoer gegevensbestand fno=00006 naam=C:\ORACLE_8I\ORADATA\OATST01\INDX01.DBF. RMAN-08522: invoer gegevensbestand fno=00007 naam=C:\ORACLE_8I\ORADATA\OATST01\DR01.DBF. RMAN-08522: invoer gegevensbestand fno=00005 naam=C:\ORACLE_8I\ORADATA\OATST01\TOOLS01.DBF. RMAN-08013: Kanaal dev: onderdeel 1 is aangemaakt. RMAN-08503: handle voor onderdeel=C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\DB_T564072044_S2_P1 opmerk g=NONE RMAN-08525: instellen backup voltooid, verstreken tijd: 00:00:56. RMAN-03022: Opdracht wordt gecompileerd: release. RMAN-03026: Kanaalresources worden vrijgegeven voor herstel van fout. RMAN-08031: Kanaal is vrijgegeven: dev. RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure during compilation of command RMAN-03013: command type: release RMAN-06012: channel: dev1 not allocated (misschien dat de release in het laatste statement weg kan...Daar geeft ie volgens mij een fout op) backup controleren : RMAN> list backupset; RMAN-03022: Opdracht wordt gecompileerd: list. Lijst van backupsets. Sleutel Record-ID Stempel Niveau Stempel instellen Aantal instellen Voltooiingstijd ------- ---------- ---------- -- ---------- ---------- ---------------------- 2 2 564072091 0 564072044 2 19-07-05 Lijst van backuponderdelen. Sleutel Ond.nr. CKP-nr. Status Voltooiingstijd Onderdeelnaam ------- --- --- ----------- ---------------------- ------------------------ 2 1 1 AVAILABLE 19-07-05 C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\DB_T564 072044_S2_P1 Lijst van opgenomen gegevensbestanden. Bestand Naam Niveau Type CKP-SCN CKP-tijd ---- ------------------------------------- -- ---- ---------- ------------- 1 C:\ORACLE_8I\ORADATA\OATST01\SYSTEM01.DBF 0 Full 492821 19-07-05 2 C:\ORACLE_8I\ORADATA\OATST01\RBS01.DBF 0 Full 492821 19-07-05 3 C:\ORACLE_8I\ORADATA\OATST01\USERS01.DBF 0 Full 492821 19-07-05 4 C:\ORACLE_8I\ORADATA\OATST01\TEMP01.DBF 0 Full 492821 19-07-05 5 C:\ORACLE_8I\ORADATA\OATST01\TOOLS01.DBF 0 Full 492821 19-07-05 6 C:\ORACLE_8I\ORADATA\OATST01\INDX01.DBF 0 Full 492821 19-07-05 7 C:\ORACLE_8I\ORADATA\OATST01\DR01.DBF 0 Full 492821 19-07-05 Nu gooien we weer de tabel ACCOUNT weg van de user scott. OBJECT_NAME ----------------------------------------------------------------------- ACCOUNT BONUS DEPT EMP PK_DEPT PK_EMP RECEIPT SALGRADE 8 rijen zijn geselecteerd. SQL> drop table account; Tabel is verwijderd. SQL> select object_name from user_objects; OBJECT_NAME ----------------------------------------------------------------------- BONUS DEPT EMP PK_DEPT PK_EMP RECEIPT SALGRADE 7 rijen zijn geselecteerd. We willen de tabel uiteraard weer terug !! Proberen via een volledige restore en recovery van de database : RMAN> run { 2> allocate channel dev1 type disk; 3> restore database; 4> recover database; 5> } RMAN-03022: Opdracht wordt gecompileerd: allocate. RMAN-03023: Opdracht wordt uitgevoerd: allocate. RMAN-08030: Kanaal is toegewezen: dev1. RMAN-08500: kanaal dev1: sid=13 apparaattype=DISK RMAN-03022: Opdracht wordt gecompileerd: restore. RMAN-03022: Opdracht wordt gecompileerd: IRESTORE. RMAN-03023: Opdracht wordt uitgevoerd: IRESTORE. RMAN-08016: Kanaal dev1: terugzetten van backupset van gegevensbestand wordt ges tart. RMAN-08502: set_count=2 set_stamp=564072044 creation_time=19-07-05 RMAN-08089: Kanaal dev1: via backupset te herstellen gegevensbestand(en) worden gespecificeerd. RMAN-08523: gegevensbestand herstellen 00001 to C:\ORACLE_8I\ORADATA\OATST01\SYS TEM01.DBF. RMAN-08523: gegevensbestand herstellen 00002 to C:\ORACLE_8I\ORADATA\OATST01\RBS 01.DBF. RMAN-08523: gegevensbestand herstellen 00003 to C:\ORACLE_8I\ORADATA\OATST01\USE RS01.DBF. RMAN-08523: gegevensbestand herstellen 00004 to C:\ORACLE_8I\ORADATA\OATST01\TEM P01.DBF. RMAN-08523: gegevensbestand herstellen 00005 to C:\ORACLE_8I\ORADATA\OATST01\TOO LS01.DBF. RMAN-08523: gegevensbestand herstellen 00006 to C:\ORACLE_8I\ORADATA\OATST01\IND X01.DBF. RMAN-08523: gegevensbestand herstellen 00007 to C:\ORACLE_8I\ORADATA\OATST01\DR0 1.DBF. RMAN-08023: Kanaal dev1: backuponderdeel 1 is teruggezet. RMAN-08511: onderdeelhandle=C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\DB_T564072044_ S2_P1 label=FULL BACKUP parameters=NULL RMAN-08024: Kanaal dev1: terugzetten is voltooid. RMAN-03022: Opdracht wordt gecompileerd: recover. RMAN-03022: Opdracht wordt gecompileerd: recover(1). RMAN-03022: Opdracht wordt gecompileerd: recover(2). RMAN-03022: Opdracht wordt gecompileerd: recover(3). RMAN-03023: Opdracht wordt uitgevoerd: recover(3). RMAN-08054: Mediaherstel wordt gestart. RMAN-08055: Mediaherstel is voltooid. RMAN-03022: Opdracht wordt gecompileerd: recover(4). RMAN-08031: Kanaal is vrijgegeven: dev1. Als we nu kijken of de tabel ACCOUNT weer terug is zien we het volgende.... SQL> select object_name from user_objects; OBJECT_NAME ----------------------------------------------------- BONUS DEPT EMP PK_DEPT PK_EMP RECEIPT SALGRADE 7 rijen zijn geselecteerd. De restore is dus niet gelukt. Dan maar een restore until time doen…. Eerst script gemaakt voor de restore/recovery van de controlfiles en database run { allocate channel c1 type disk; restore controlfile to 'c:\oracle_8i\dbs\cfl.ctl'; shutdown immediate; startup nomount; replicate controlfile from 'c:\oracle_8i\dbs\cfl.ctl'; startup mount; set until time "TO_DATE('07-21-05 12:00:00','MM/DD/YY HH24:MI:SS')"; allocate channel c1 type disk; restore database; recover database; alter database open resetlogs; } RMAN> @restore.txt RMAN> run { 2> allocate channel c1 type disk; 3> restore controlfile to 'c:\oracle_8i\dbs\cfl.ctl'; 4> shutdown immediate; 5> startup nomount; 6> replicate controlfile from 'c:\oracle_8i\dbs\cfl.ctl'; 7> startup mount; 8> set until time "TO_DATE('07-21-05 12:00:00','MM/DD/YY HH24:MI:SS')"; 9> allocate channel c1 type disk; 10> restore database; 11> recover database; 12> alter database open resetlogs; 13> } RMAN-03022: Opdracht wordt gecompileerd: allocate. RMAN-03023: Opdracht wordt uitgevoerd: allocate. RMAN-08030: Kanaal is toegewezen: c1. RMAN-08500: kanaal c1: sid=14 apparaattype=DISK RMAN-03022: Opdracht wordt gecompileerd: restore. RMAN-03022: Opdracht wordt gecompileerd: IRESTORE. RMAN-03023: Opdracht wordt uitgevoerd: IRESTORE. RMAN-08016: Kanaal c1: terugzetten van backupset van gegevensbestand wordt gestart. RMAN-08502: set_count=2 set_stamp=564235239 creation_time=21-07-05 RMAN-08021: Kanaal c1: control-bestand wordt teruggezet. RMAN-08505: uitvoerbestandsnaam=C:\ORACLE_8I\DBS\CFL.CTL RMAN-08023: Kanaal c1: backuponderdeel 1 is teruggezet. RMAN-08511: onderdeelhandle=C:\ORACLE_8I\DATABASE\02GQ32V7_1_1 label=CURRENT parameters=NULL RMAN-08024: Kanaal c1: terugzetten is voltooid. RMAN-03022: Opdracht wordt gecompileerd: shutdown. RMAN-06404: De database is ontkoppeld. RMAN-06402: Oracle-instance is afgesloten. RMAN-03022: Opdracht wordt gecompileerd: startup. RMAN-06193: Verbonden met doeldatabase (niet gestart). RMAN-06196: Oracle-instance is gestart. Algemeen gebied van het totale systeem 238225436 bytes. Fixed Size 75804 bytes. Variable Size 80785408 bytes. Database Buffers 157286400 bytes. Redo Buffers 77824 bytes. RMAN-03022: Opdracht wordt gecompileerd: replicate. RMAN-03023: Opdracht wordt uitgevoerd: replicate. RMAN-08058: Control-bestand wordt gerepliceerd. RMAN-08506: invoerbestandsnaam=C:\ORACLE_8I\DBS\CFL.CTL RMAN-08505: uitvoerbestandsnaam=C:\ORACLE_8I\ORADATA\OATST01\CONTROL01.CTL RMAN-08505: uitvoerbestandsnaam=C:\ORACLE_8I\ORADATA\OATST01\CONTROL02.CTL RMAN-08505: uitvoerbestandsnaam=C:\ORACLE_8I\ORADATA\OATST01\CONTROL03.CTL RMAN-03022: Opdracht wordt gecompileerd: startup. RMAN-06401: De database is al gestart. RMAN-06199: De database is gekoppeld. RMAN-03022: Opdracht wordt gecompileerd: set. RMAN-03022: Opdracht wordt gecompileerd: allocate. RMAN-03023: Opdracht wordt uitgevoerd: allocate. RMAN-08030: Kanaal is toegewezen: c1. RMAN-08500: kanaal c1: sid=14 apparaattype=DISK RMAN-03022: Opdracht wordt gecompileerd: restore. RMAN-03022: Opdracht wordt gecompileerd: IRESTORE. RMAN-03023: Opdracht wordt uitgevoerd: IRESTORE. RMAN-08016: Kanaal c1: terugzetten van backupset van gegevensbestand wordt gestart. RMAN-08502: set_count=1 set_stamp=564235183 creation_time=21-07-05 RMAN-08089: Kanaal c1: via backupset te herstellen gegevensbestand(en) worden gespecificeerd. RMAN-08523: gegevensbestand herstellen 00001 to C:\ORACLE_8I\ORADATA\OATST01\SYSTEM01.DBF. RMAN-08523: gegevensbestand herstellen 00002 to C:\ORACLE_8I\ORADATA\OATST01\RBS01.DBF. RMAN-08523: gegevensbestand herstellen 00003 to C:\ORACLE_8I\ORADATA\OATST01\USERS01.DBF. RMAN-08523: gegevensbestand herstellen 00004 to C:\ORACLE_8I\ORADATA\OATST01\TEMP01.DBF. RMAN-08523: gegevensbestand herstellen 00005 to C:\ORACLE_8I\ORADATA\OATST01\TOOLS01.DBF. RMAN-08523: gegevensbestand herstellen 00006 to C:\ORACLE_8I\ORADATA\OATST01\INDX01.DBF. RMAN-08523: gegevensbestand herstellen 00007 to C:\ORACLE_8I\ORADATA\OATST01\DR01.DBF. RMAN-08023: Kanaal c1: backuponderdeel 1 is teruggezet. RMAN-08511: onderdeelhandle=C:\ORACLE_8I\ORADATA\BACKUP_NOCATALOG\DB_T564235183_S1_P1 label= FULL BACK RMAN-08024: Kanaal c1: terugzetten is voltooid. RMAN-03022: Opdracht wordt gecompileerd: recover. RMAN-03022: Opdracht wordt gecompileerd: recover(1). RMAN-03022: Opdracht wordt gecompileerd: recover(2). RMAN-03022: Opdracht wordt gecompileerd: recover(3). RMAN-03023: Opdracht wordt uitgevoerd: recover(3). RMAN-08054: Mediaherstel wordt gestart. RMAN-03022: Opdracht wordt gecompileerd: recover(4). RMAN-06050: Archieflogbestand-thread 1 met volgnummer 891 staat al op schijf als bestand C:\ORACLE_8I\ DO01.LOG. RMAN-03023: Opdracht wordt uitgevoerd: recover(4). RMAN-08515: bestandsnaam archieflog=C:\ORACLE_8I\ORADATA\OATST01\REDO01.LOG thread=1 reeks=891 RMAN-08055: Mediaherstel is voltooid. RMAN-03022: Opdracht wordt gecompileerd: alter db. RMAN-06400: De database is geopend. RMAN-08031: Kanaal is vrijgegeven: c1. RMAN> **end-of-file** RMAN> exit Recovery Manager is voltooid. 'C:\Oracle_8i\oradata\BACKUP_NOCATALOG>sqlplus scott/tiger SQL*Plus: Release 8.1.7.0.0 - Production on Do Jul 21 12:09:25 2005 (c) Copyright 2000 Oracle Corporation. All rights reserved. Verbonden met: Oracle8i Release 8.1.7.4.1 - Production JServer Release 8.1.7.4.1 - Production SQL> select object_name from user_objects; OBJECT_NAME -------------------------------------------------------------------------------- ACCOUNT BONUS DEPT EMP PK_DEPT PK_EMP RECEIPT SALGRADE 8 rijen zijn geselecteerd. Restore gelukt !!!!!