rman备份恢复测试(二)
on;
List of Database Incarnations
DB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1168992346 PARENT 1 2006-11-16 18:40:24
2 2 ORCL 1168992346 PARENT 456954 2007-12-13 10:20:12
4 4 ORCL 1168992346 CURRENT 3326784 2008-06-23 12:27:43
3 3 ORCL 1168992346 ORPHAN 3326890 2008-06-23 11:07:57
至此数据库恢复到较早前一个时间点。
重复执行同一个恢复脚本会有以下报错
木雨山 21:01:49
木雨山 21:02:14
执行rman恢复的时候报下面的错,不知道是什么原因?日期:2011-3-1
HAHA 9:13:41
D:\>rman target / nocatalog
恢复管理器: Release 10.2.0.1.0 - Production on 星期四 3月 27 00:18:13 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到目标数据库: ORCL (DBID=1176767170)
使用目标数据库控制文件替代恢复目录
RMAN> list incarnation;
数据库原型列表
DB 关键字 Inc 关键字 DB 名 DB ID STATUS 重置 SCN 重置时间
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1176767170 PARENT 1 10-3月 -08
2 2 ORCL 1176767170 PARENT 472611 25-3月 -08
3 3 ORCL 1176767170 PARENT 474163 25-3月 -08
4 4 ORCL 1176767170 PARENT 488631 26-3月 -08
5 5 ORCL 1176767170 PARENT 490308 26-3月 -08
6 6 ORCL 1176767170 PARENT 506067 27-3月 -08
7 7 ORCL 1176767170 CURRENT 506961 27-3月 -08
--发现有对象丢失,需要进行基于时间的恢复,但丢失对象是发生在实体5的运行过程中,因此使用实体5的备份进行不完全恢复
RMAN> reset database to incarnation
HAHA 9:13:52
这个是rman比较经典的错误
木雨山 9:27:27
RMAN> RESTORE DATABASE UNTIL SCN 490308
木雨山 9:27:32
这样行吗
HAHA 9:27:44
可以的
HAHA 9:27:57
这个是按照scn好恢复
木雨山 9:28:24
我是说 出现那个错误后 这样做
HAHA 9:29:01
reset database to incarnation
木雨山 9:29:12
要先执行这个命令吗
HAHA 9:29:12
RMAN> list incarnation;
数据库原型列表
DB 关键字 Inc 关键字 DB 名 DB ID STATUS 重置 SCN 重置时间
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1176767170 PARENT 1 10-3月 -08
2 2 ORCL 1176767170 PARENT 472611 25-3月 -08
3 3 ORCL 1176767170 PARENT 474163 25-3月 -08
4 4 ORCL 1176767170 PARENT 488631 26-3月 -08
5 5 ORCL 1176767170 PARENT 490308 26-3月 -08
6 6 ORCL 1176767170 PARENT 506067 27-3月 -08
7 7 ORCL 1176767170 CURRENT 506961 27-3月 -08
--发现有对象丢失,需要进行基于时间的恢复,但丢失对象是发生在实体5的运行过程中,因此使用实体5的备份进行不完全恢复
RMAN> reset database to incarnation
HAHA 9:29:51
这个就是alter database open resetlogs后才会引起这个错误
HAHA 9:30:22
如果你把恢复的点放到执行resetlogs时间点后就不会出现这个问题了
木雨山 9:34:23
不太明白
HAHA 9:34:52
你看看rman20207的错误提示
木雨山 9:38:36
哦 好的
利用归档及联机日志(如果需要的话。恢复的自动过程,一般不需要人为控制)恢复到合适时间点(我选择和控制文件一致的时间点)
RMAN> recover database until time '2009-03-10 18:07:00';
启动 recover 于 10-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 3 已作为文件 E:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LO
G 存在于磁盘上
存档日志文件名 =E:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\REDO03.LOG 线程 =1 序列 =3
介质恢复完成, 用时: 00:00:04
完成 rec