恢復測試,模擬數據庫硬盤損壞數據丟失。
1、數據庫全備份,
2、備份數據文件、控制文件、spfile、口令文件
3、刪除數據庫(用dbca刪除),只留Oracle程序。
4、啟動數據庫實例
HB130000 Oracle$rman target / catalog rman/rman@omsora9
Recovery Manager: Release 9.2.0.1.0 - 64bit ProdUCtion
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
connected to target database (not started)
connected to recovery catalog database
RMAN> startup nomount
startup failed: ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/oracle/oracle/app/Oracle/product/9.2.
0.1/dbs/inithb130000.ora'
trying to start the Oracle instance without parameter files ...
Oracle instance started
Total System Global Area 156729832 bytes
Fixed Size 741864 bytes
Variable Size 104857600 bytes
Database Buffers 50331648 bytes
Redo Buffers 798720 bytes
5、查詢原數據庫dbid,恢復spfile
RMAN> list incarnation;查詢原數據庫的dbid。
List of Database Incarnations
DB Key Inc Key DB Name DB ID CUR Reset SCN Reset Time
------- ------- -------- ---------------- --- ---------- ----------
15936 131731 HB130000 2380174037 YES 23440815 25-AUG-05
RMAN> set dbid=2380174037; 設置dbid。
executing command: SET DBID
RMAN> restore spfile;
Starting restore at 13-SEP-05
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: restoring SPFILE
output filename=/oracle/oracle/app/Oracle/product/9.2.0.1/dbs/spfilehb130000.ora
channel ORA_DISK_1: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/hb130000_ctl_c-2380174037-20050913-00.bak tag=n
ull params=NULL
channel ORA_DISK_1: restore complete
Finished restore at 13-SEP-05
6、關閉數據庫,使用使用spfile文件啟動
RMAN> shutdown immediate
Oracle instance shut down
RMAN> startup nomount;
connected to target database (not started)
Oracle instance started
Total System Global Area 303530016 bytes
Fixed Size 741408 bytes
Variable Size 268435456 bytes
Database Buffers 33554432 bytes
Redo Buffers 798720 bytes
7、恢復控制文件
RMAN> restore controlfile;
Starting restore at 13-SEP-05
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=13 devtype=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: sid=14 devtype=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: sid=15 devtype=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: sid=16 devtype=DISK
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: restoring controlfile
output filename=/oracle/oracle/app/Oracle/product/9.2.0.1/dbs/hb130000/control01
.ctl
channel ORA_DISK_1: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/hb130000_ctl_c-2380174037-20050913-00.bak tag=n
ull params=NULL
channel ORA_DISK_1: restore complete
replicating controlfile
input filename=/oracle/oracle/app/Oracle/product/9.2.0.1/dbs/hb130000/control01.
ctl
output filename=/oracle/oracle/app/Oracle/product/9.2.0.1/dbs/hb130000/control02
.ctl
output filename=/oradata/hb130000/control03.ctl
Finished restore at 13-SEP-05
8、數據庫mount
RMAN> alter database mount;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of alter db command at 09/13/2005 14:13:42
ORA-01990: error opening passWord file '/oracle/oracle/app/Oracle/product/9.2.0.
1/dbs/orapw'
ORA-27037: unable to oBTain file status
IBM AIX RISC System/6000 Error: 2: No such file or Directory
Additional information: 3
RMAN> alter database mount;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of alter db command at 09/13/2005 14:17:18
ORA-01100: database already mounted
9、數據庫恢復。
RMAN> restore database;
Starting restore at 13-SEP-05
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00006 to /oradata/hb130000/indx01.dbf
restoring datafile 00008 to /oradata/hb130000/tools01.dbf
restoring datafile 00013 to /oradata/hb130000/CA.dbf
restoring datafile 00015 to /oradata/hb130000/FOGLIGHT.dbf
restoring datafile 00017 to /oradata/hb130000/GDSS.dbf
channel ORA_DISK_2: starting datafile backupset restore
channel ORA_DISK_2: specifying datafile(s) to restore from backup set
restoring datafile 00002 to /oradata/hb130000/undotbs01.dbf
restoring datafile 00004 to /oradata/hb130000/drsys01.dbf
restoring datafile 00007 to /oradata/hb130000/odm01.dbf
restoring datafile 00014 to /oradata/hb130000/QUEST.dbf
restoring datafile 00021 to /oradata/hb130000/oem_repository.dbf
channel ORA_DISK_3: starting datafile backupset restore
channel ORA_DISK_3: specifying datafile(s) to restore from backup set
restoring datafile 00003 to /oradata/hb130000/cwmlite01.dbf
restoring datafile 00005 to /oradata/hb130000/example01.dbf
restoring datafile 00010 to /oradata/hb130000/xdb01.dbf
restoring datafile 00016 to /oradata/hb130000/gwd.dbf
restoring datafile 00020 to /oradata/hb130000/catalog_rman.dbf
channel ORA_DISK_4: starting datafile backupset restore
channel ORA_DISK_4: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /oradata/hb130000/system01.dbf
restoring datafile 00009 to /oradata/hb130000/users01.dbf
restoring datafile 00012 to /oradata/hb130000/GFB.DBF
restoring datafile 00019 to /oradata/hb130000/tgggg.dbf
channel ORA_DISK_1: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/df_HB130000_568897697_175_1.bak tag=TAG20050913
T110814 params=NULL
channel ORA_DISK_1: restore complete
channel ORA_DISK_2: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/df_HB130000_568897694_173_1.bak tag=TAG20050913
T110814 params=NULL
channel ORA_DISK_2: restore complete
channel ORA_DISK_3: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/df_HB130000_568897694_172_1.bak tag=TAG20050913
T110814 params=NULL
channel ORA_DISK_3: restore complete
channel ORA_DISK_4: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/df_HB130000_568897695_174_1.bak tag=TAG20050913
T110814 params=NULL
channel ORA_DISK_4: restore complete
Finished restore at 13-SEP-05
RMAN>
RMAN> recover database;
Starting recover at 13-SEP-05
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
starting media recovery
channel ORA_DISK_1: starting archive log restore to default destination
channel ORA_DISK_1: restoring archive log
archive log thread=1 sequence=32
channel ORA_DISK_1: restored backup pIEce 1
pIEce handle=/oradata/rmanbackup/df_HB130000_568897755_179_1.bak tag=TAG20050913
T110915 params=NULL
channel ORA_DISK_1: restore complete
archive log filename=/oradata/rmanbackup/archive/hb130000_1_32.dbf thread=1 sequ
ence=32
unable to find archive log
archive log thread=1 sequence=33
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 09/13/2005 14:20:50
RMAN-06054: media recovery requesting unknown log: thread 1 scn 26146497
RMAN> recover database;
Starting recover at 13-SEP-05
using channel ORA_DISK_1
using channel ORA_DISK_2
using channel ORA_DISK_3
using channel ORA_DISK_4
starting media recovery
unable to find archive log
archive log thread=1 sequence=33
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 09/13/2005 14:26:33
RMAN-06054: media recovery requesting unknown log: thread 1 scn 26146497
10、數據庫resetlogs打開
RMAN> alter database open resetlogs;
database opened
new incarnation of database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
RMAN>
11、完全備份數據庫。