Dnes je: 21. května 2012
| Oprava poškozého bloku v souboru s pomocí RMANa |
|
Jistě se vám stalo a jestli doteď ne, pak v budoucnu určite, že se poškodí blok v datovém souboru. Naštěstí exituje RMAN a s jeho pomocí dokážete opravit poškozený blok velmi rychle a efektně. Podívejte se na příklad, kdy neprošla záloha, protože byl zjištěný poškozený blok v jednom ze zálohovaných souborů. Další možný postup jsem popisoval v jiném článku. RMAN> backup tablespace test; Starting backup at 2010-06-24:09:00:43 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=48 device type=DISK channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00008 name=/home/oracle/BACKUP/TOMtbs01.dbf channel ORA_DISK_1: starting piece 1 at 2010-06-24:09:00:44 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03009: failure of backup command on ORA_DISK_1 channel at 06/24/2010 09:00:51 ORA-19566: exceeded limit of 0 corrupt blocks for file /home/oracle/BACKUP/poskozeny.dbf V RMANu můžete rovnou zjistit detaily o vzniklé chybě. To znamená, o jaký objekt se jedná a komu patří.RMAN> list failure detail;List of Database Failures ========================= Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------------- ------- 3822 HIGH OPEN 2010-06-24:08:59:50 Datafile 8: '/home/oracle/BACKUP/poskozeny.dbf' contains one or more corrupt blocks Impact: Some objects in tablespace TOMTBS might be unavailable List of child failures for parent failure ID 3822 Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------------- ------- 3831 HIGH OPEN 2010-06-24:08:59:50 Block 130 in datafile 8: '/home/oracle/BACKUP/poskozeny.dbf' is media corrupt Impact: Object TOMCOPY owned by TOM might be unavailable 3825 HIGH OPEN 2010-06-24:08:59:50 Block 129 in datafile 8: '/home/oracle/BACKUP/poskozeny.dbf' is media corrupt Impact: Object TOMCOPY owned by TOM might be unavailable Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------------- ------- 1282 HIGH OPEN 2010-06-23:14:42:23 One or more non-system datafiles are offline Impact: See impact for individual child failures List of child failures for parent failure ID 1282 Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------------- ------- 1285 HIGH OPEN 2010-06-23:14:42:23 Datafile 7: '+DATA/orcl/datafile/appraisal.280.722442851' is offline Impact: Some objects in tablespace APPRAISAL might be unavailable Jakmile víte o poškození více, můžete požádat RMAN a radu, jak sjednat nápravuRMAN> advise failure all;List of Database Failures ========================= Failure ID Priority Status Time Detected Summary ---------- -------- --------- ------------------- ------- 3822 HIGH OPEN 2010-06-24:08:59:50 Datafile 8: '/home/oracle/BACKUP/poskozeny.dbf' contains one or more corrupt blocks 1282 HIGH OPEN 2010-06-23:14:42:23 One or more non-system datafiles are offline analyzing automatic repair options; this may take some time using channel ORA_DISK_1 allocated channel: ORA_SBT_TAPE_1 channel ORA_SBT_TAPE_1: SID=61 device type=SBT_TAPE channel ORA_SBT_TAPE_1: WARNING: Oracle Test Disk API analyzing automatic repair options complete Mandatory Manual Actions ======================== no manual actions available Optional Manual Actions ======================= no manual actions available Automated Repair Options ======================== Option Repair Description ------ ------------------ 1 Recover multiple corrupt blocks in datafile 8; Online tablespace APPRAISAL Strategy: The repair includes complete media recovery with no data loss Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_3089901648.hm Nakonec nezbývá než chybu opravit.RMAN> repair failure;Strategy: The repair includes complete media recovery with no data loss Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_3089901648.hm contents of repair script: # block media recovery for multiple blocks recover datafile 8 block 129 to 130; # online a offline tablespace sql "begin sys.dbms_ir.execsqlscript(filename => ''/u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_2784238257.hm'' ); end;"; Do you really want to execute the above repair (enter YES or NO)? yes executing repair script Starting recover at 2010-06-24:09:52:20 using channel ORA_DISK_1 using channel ORA_SBT_TAPE_1 channel ORA_SBT_TAPE_1: restoring block(s) from datafile copy +FRA/orcl/datafile/TOMtbs.259.722509095 starting media recovery media recovery complete, elapsed time: 00:00:03 Finished recover at 2010-06-24:09:52:25 sql statement: begin sys.dbms_ir.execsqlscript(filename => ''/u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_2784238257.hm'' ); end; repair failure complete Kontrola, vše je v pořádku a můžete zálohu spustit znovu.RMAN> list failure all;no failures found that match specification
|
Partnerské internetové stránky:
www.oracledba.cz www.asktom.cz www.tomas-solar.cz