DRA(Data Recovery Advisor)的使用

关于DRA的官方描述:

下面我们来做一个小实验来实际体会下DRA的便利性:

  1. rman登录到目标数据库
  2. 我们这里模拟丢失了一个数据文件
  3. 观察DRA是如何恢复数据库的

1.rman登录到目标数据库

[oracle@JY-DB BACKUP]$ rman target /

Recovery Manager: Release 11.2.0.4.0 - Production on Wed Aug 5 11:15:12 2015

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: JYZHAO (DBID=2463175424, not open)

RMAN> LIST FAILURE;

using target database control file instead of recovery catalog
no failures found that match specification

可以看到目前数据库没有找到需要恢复的匹配项。

2.我们这里模拟丢失了一个数据文件

#2.1 正常关库
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

#2.2 删除数据文件+DATA1/jyzhao/datafile/dbs_d_jingyu.259.886871319
#直接删除数据文件会报错
ASMCMD> rm  DBS_D_JINGYU.259.886871319
ORA-15032: not all alterations performed
ORA-15028: ASM file '+DATA1/jyzhao/datafile/DBS_D_JINGYU.259.886871319' not dropped; currently being accessed (DBD ERROR: OCIStmtExecute)
#数据库关闭后删除成功
ASMCMD>  rm  DBS_D_JINGYU.259.886871319
ASMCMD>

#2.3 尝试打开数据库报错
SQL> startup
ORACLE instance started.

Total System Global Area 1620115456 bytes
Fixed Size                  2253704 bytes
Variable Size             905972856 bytes
Database Buffers          704643072 bytes
Redo Buffers                7245824 bytes
Database mounted.


ORA-01157: cannot identify/lock data file 15 - see DBWR trace file
ORA-01110: data file 15: '+DATA1/jyzhao/datafile/dbs_d_jingyu.259.886871319'

3.观察DRA是如何恢复数据库的

3.1 LIST FAILURE;

RMAN> LIST FAILURE;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
4042       HIGH     OPEN      05-AUG-15     One or more non-system datafiles are missing

3.2 ADVISE FAILURE;

RMAN> ADVISE FAILURE;

List of Database Failures
=========================

Failure ID Priority Status    Time Detected Summary
---------- -------- --------- ------------- -------
4042       HIGH     OPEN      05-AUG-15     One or more non-system datafiles are missing

analyzing automatic repair options; this may take some time
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=25 device type=DISK
analyzing automatic repair options complete

Mandatory Manual Actions
========================
no manual actions available

Optional Manual Actions
=======================
1. If file +DATA1/jyzhao/datafile/dbs_d_jingyu.259.886871319 was unintentionally renamed or moved, restore it
2. Try flush redo using ALTER SYSTEM FLUSH REDO TO 'standby name' command.  Then perform a Data Guard role change (failover).  Available standbys: jyzhao_s.

Automated Repair Options
========================
Option Repair Description
------ ------------------
1      Restore and recover datafile 15  
  Strategy: The repair includes complete media recovery with no data loss
  Repair script: /u01/app/oracle/diag/rdbms/jyzhao/jyzhao/hm/reco_4099084102.hm

3.3 REPAIR FAILURE;

RMAN>  REPAIR FAILURE;

Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/app/oracle/diag/rdbms/jyzhao/jyzhao/hm/reco_4099084102.hm

contents of repair script:
   # restore and recover datafile
   restore datafile 15;
   recover datafile 15;
   sql 'alter database datafile 15 online';

Do you really want to execute the above repair (enter YES or NO)? yes
executing repair script

Starting restore at 05-AUG-15
using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00015 to +DATA1/jyzhao/datafile/dbs_d_jingyu.259.886871319
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/product/11.2.0/db_1/dbs/arch/JYZHAO/backupset/2015_08_05/o1_mf_nnndf_TAG20150805T102730_bw2x4m1l_.bkp
channel ORA_DISK_1: piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/arch/JYZHAO/backupset/2015_08_05/o1_mf_nnndf_TAG20150805T102730_bw2x4m1l_.bkp tag=TAG20150805T102730
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished restore at 05-AUG-15

Starting recover at 05-AUG-15
using channel ORA_DISK_1

starting media recovery
media recovery complete, elapsed time: 00:00:00

Finished recover at 05-AUG-15

sql statement: alter database datafile 15 online
repair failure complete

Do you want to open the database (enter YES or NO)? yes
database opened

RMAN> 

到此,使用DRA自动恢复完毕并成功打开数据库。

猜你喜欢

转载自www.linuxidc.com/Linux/2016-03/128777.htm