有一个测试数据库环境,数据库损坏只能启动到 MOUNT 状态,只有数据文件备份,
丢失了归档,尝试进行恢复。
启动数据库到 MOUNT 状态,登录备份文件信息到 RMAN
RMAN> catalog start with 'E:\app\Administrator\flash_recovery_area\fire\BACKUPSET\2015_12_15';
RMAN> catalog start with 'E:\app\Administrator\flash_recovery_area\fire\BACKUPSET\2015_11_25';
查看数据文件的备份信息,找到备份数据库时的 SCN ,Ckp SCN
RMAN> list backup of database;
使用目标数据库控制文件替代恢复目录
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
7 Full 1.30G DISK 00:00:00 25-11月-15
BP 关键字: 7 状态: AVAILABLE 已压缩: NO 标记: TAG20151125T101109
段名:E:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\FIRE\BACKUPSET\2015_11_25\O1_MF_NNNDF_TAG20151125T101109_C5B65Y85_.BKP
备份集 7 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
1 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\SYSTEM01.DBF
2 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\SYSAUX01.DBF
3 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\UNDOTBS01.DBF
4 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\USERS01.DBF
5 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\EXAMPLE01.DBF
6 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FIRE\DATAFILE\O1_MF_FIRE_BTGS1SFX_.DBF
7 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FIRE\DATAFILE\O2_MF_FIRE_BTGS1SFX_.DBF
8 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\TEST01.DBF
9 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FLAME01.DBF
进行数据文件恢复和介质恢复,由于丢失归档日志,仅恢复到备份数据库文件的那一时间点的 SCN
RMAN> RUN
{
SET UNTIL SCN 8037053724;
RESTORE DATABASE;
RECOVER DATABASE;
}
executing command: SET until clause
Starting restore at 2015-12-21 18:02:59
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1 device type=DISK
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 00001 to /ORADATA/oradata/flame/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /ORADATA/oradata/flame/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /ORADATA/oradata/flame/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /ORADATA/oradata/flame/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /ORADATA/oradata/flame/test01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /ORADATA/oradata/flame/test02.dbf
channel ORA_DISK_1: reading from backup piece /u02/app/oracle/fast_recovery_area/FLAME/backupset/2015_12_15/o1_mf_nnnd0_TAG20151215T163117_c6zmyokr_.bkp
channel ORA_DISK_1: piece handle=/u02/app/oracle/fast_recovery_area/FLAME/backupset/2015_12_15/o1_mf_nnnd0_TAG20151215T163117_c6zmyokr_.bkp tag=TAG20151215T163117
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
Finished restore at 2015-12-21 18:03:02
Starting recover at 2015-12-21 18:03:02
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:01
Finished recover at 2015-12-21 18:03:03
打开数据库
SQL> alter database open resetlogs;
Database altered.
查看数据库 RESETLOG 的记录
SQL> select * from V$DATABASE_INCARNATION;
INCARNATION# RESETLOGS_CHANGE# RESETLOGS_TIME PRIOR_RESETLOGS_CHANGE# PRIOR_RESETLOGS_TIM STATUS RESETLOGS_ID PRIOR_INCARNATION# FLASHBACK_DATABASE_ALLOWED
------------ ----------------- ------------------- ----------------------- ------------------- ------- ------------ ------------------ --------------------------
1 1 2011-09-17 09:46:04 0 PARENT 762083164 0 NO
2 995548 2015-12-01 10:01:29 1 2011-09-17 09:46:04 PARENT 897300089 1 NO
3 1118444 2015-12-01 16:47:50 995548 2015-12-01 10:01:29 PARENT 897324470 2 NO
4 2663257 2015-12-21 18:03:47 1118444 2015-12-01 16:47:50 CURRENT 899057027 3 NO
启动数据库到 MOUNT 状态,登录备份文件信息到 RMAN
RMAN> catalog start with 'E:\app\Administrator\flash_recovery_area\fire\BACKUPSET\2015_12_15';
RMAN> catalog start with 'E:\app\Administrator\flash_recovery_area\fire\BACKUPSET\2015_11_25';
查看数据文件的备份信息,找到备份数据库时的 SCN ,Ckp SCN
RMAN> list backup of database;
使用目标数据库控制文件替代恢复目录
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
7 Full 1.30G DISK 00:00:00 25-11月-15
BP 关键字: 7 状态: AVAILABLE 已压缩: NO 标记: TAG20151125T101109
段名:E:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\FIRE\BACKUPSET\2015_11_25\O1_MF_NNNDF_TAG20151125T101109_C5B65Y85_.BKP
备份集 7 中的数据文件列表
文件 LV 类型 Ckp SCN Ckp 时间 名称
---- -- ---- ---------- ---------- ----
1 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\SYSTEM01.DBF
2 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\SYSAUX01.DBF
3 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\UNDOTBS01.DBF
4 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\USERS01.DBF
5 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\EXAMPLE01.DBF
6 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FIRE\DATAFILE\O1_MF_FIRE_BTGS1SFX_.DBF
7 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FIRE\DATAFILE\O2_MF_FIRE_BTGS1SFX_.DBF
8 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\TEST01.DBF
9 Full 8037053724 25-11月-15 E:\APP\ADMINISTRATOR\ORADATA\FIRE\FLAME01.DBF
进行数据文件恢复和介质恢复,由于丢失归档日志,仅恢复到备份数据库文件的那一时间点的 SCN
RMAN> RUN
{
SET UNTIL SCN 8037053724;
RESTORE DATABASE;
RECOVER DATABASE;
}
executing command: SET until clause
Starting restore at 2015-12-21 18:02:59
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1 device type=DISK
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 00001 to /ORADATA/oradata/flame/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /ORADATA/oradata/flame/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /ORADATA/oradata/flame/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /ORADATA/oradata/flame/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /ORADATA/oradata/flame/test01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /ORADATA/oradata/flame/test02.dbf
channel ORA_DISK_1: reading from backup piece /u02/app/oracle/fast_recovery_area/FLAME/backupset/2015_12_15/o1_mf_nnnd0_TAG20151215T163117_c6zmyokr_.bkp
channel ORA_DISK_1: piece handle=/u02/app/oracle/fast_recovery_area/FLAME/backupset/2015_12_15/o1_mf_nnnd0_TAG20151215T163117_c6zmyokr_.bkp tag=TAG20151215T163117
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
Finished restore at 2015-12-21 18:03:02
Starting recover at 2015-12-21 18:03:02
using channel ORA_DISK_1
starting media recovery
media recovery complete, elapsed time: 00:00:01
Finished recover at 2015-12-21 18:03:03
SQL> alter database open resetlogs;
Database altered.
查看数据库 RESETLOG 的记录
SQL> select * from V$DATABASE_INCARNATION;
INCARNATION# RESETLOGS_CHANGE# RESETLOGS_TIME PRIOR_RESETLOGS_CHANGE# PRIOR_RESETLOGS_TIM STATUS RESETLOGS_ID PRIOR_INCARNATION# FLASHBACK_DATABASE_ALLOWED
------------ ----------------- ------------------- ----------------------- ------------------- ------- ------------ ------------------ --------------------------
1 1 2011-09-17 09:46:04 0 PARENT 762083164 0 NO
2 995548 2015-12-01 10:01:29 1 2011-09-17 09:46:04 PARENT 897300089 1 NO
3 1118444 2015-12-01 16:47:50 995548 2015-12-01 10:01:29 PARENT 897324470 2 NO
4 2663257 2015-12-21 18:03:47 1118444 2015-12-01 16:47:50 CURRENT 899057027 3 NO
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26506993/viewspace-1876337/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26506993/viewspace-1876337/