|
|
原帖由 wenaini 于 2006-6-30 16:45 发表 ![]()
首先做一个全备份
C ocuments and SettingsAdministrator>set oracle_sid=test
C ocuments and SettingsAdministrator>set nls_date_format=yyyymmdd hh24:mi:ss
C ocuments and SettingsAdministrator>rman target /
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
已连接到目标数据库 (未启动)
RMAN> startup mount
Oracle 例程已启动
数据库已加载
系统全局区域总计 126950220 字节
Fixed Size 453452 字节
Variable Size 109051904 字节
Database Buffers 16777216 字节
Redo Buffers 667648 字节
RMAN> backup database;
启动 backup 于 20060630 16:21:10
正在使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
备份集中包括当前控制文件
输入数据文件 fno=00001 name=D:ORACLEORADATATESTSYSTEM01.DBF
输入数据文件 fno=00002 name=D:ORACLEORADATATESTUNDOTBS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 20060630 16:21:13
通道 ORA_DISK_1: 已完成段 1 于 20060630 16:21:28
段 handle=D:ORACLEORA92DATABASE 1HMUDFO_1_1 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:16
完成 backup 于 20060630 16:21:28
RMAN> shutdown immediate
数据库已卸载
Oracle 例程已关闭
RMAN> quit
恢复管理器完成。
拷贝这时的控制文件,称为a.ctl
C ocuments and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期五 6月 30 16:22:25 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 126950220 bytes
Fixed Size 453452 bytes
Variable Size 109051904 bytes
Database Buffers 16777216 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
数据库已经打开。
SQL> create table a1 as select * from dba_users;
表已创建。
SQL> alter system switch logfile;
系统已更改。
SQL> /
系统已更改。
SQL> /
系统已更改。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> quit
创建了a1表
进行不完全恢复 :
从Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production中断开
C ocuments and SettingsAdministrator>rman target /
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
已连接到目标数据库 (未启动)
RMAN> startup mount
Oracle 例程已启动
数据库已加载
系统全局区域总计 126950220 字节
Fixed Size 453452 字节
Variable Size 109051904 字节
Database Buffers 16777216 字节
Redo Buffers 667648 字节
RMAN> run{
2> set until time '20060630 16:21:00';
3> restore database;
4> recover database;}
正在执行命令: SET until clause
正在使用目标数据库控制文件替代恢复目录
启动 restore 于 20060630 16:25:04
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:ORACLEORADATATESTSYSTEM01.DBF
正将数据文件00002恢复到D:ORACLEORADATATESTUNDOTBS01.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:ORACLEORA92DATABASE 1HMUDFO_1_1 tag=TAG20060630T162111 params=NU
LL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 20060630 16:25:21
启动 recover 于 20060630 16:25:21
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 22 已作为文件 D:ORACLEORADATATESTARCHIVELOG1EST001001S0
0022.ARC 存在于磁盘上
存档日志文件名 =D:ORACLEORADATATESTARCHIVELOG1EST001001S00022.ARC 线程 =1
序列 =22
完成介质的恢复
完成 recover 于 20060630 16:25:22
RMAN> alter database open resetlogs;
数据库已打开
RMAN> quit
恢复管理器完成。
C ocuments and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期五 6月 30 16:25:49 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba
已连接。
SQL> desc a1
ERROR:
ORA-04043: 对象 a1 不存在
发现恢复成功,a1表没有了
SQL> create table a2 as select * from dba_users;
表已创建。
SQL> alter system switch logfile;
系统已更改。
SQL> alter system switch logfile;
系统已更改。
SQL> /
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> quit
创建了另一张表a2
这时备份了控制文件b.ctl
开始进行跨越resetlog的恢复,先把原来的a.ctl复制回来
从Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production中断开
C ocuments and SettingsAdministrator>rman target /
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
已连接到目标数据库 (未启动)
RMAN> startup mount
Oracle 例程已启动
数据库已加载
系统全局区域总计 126950220 字节
Fixed Size 453452 字节
Variable Size 109051904 字节
Database Buffers 16777216 字节
Redo Buffers 667648 字节
RMAN> run{
2> set until time '20060630 16:21:00';
3> restore database;
4> recover database;}
正在执行命令: SET until clause
正在使用目标数据库控制文件替代恢复目录
启动 restore 于 20060630 16:28:33
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:ORACLEORADATATESTSYSTEM01.DBF
正将数据文件00002恢复到D:ORACLEORADATATESTUNDOTBS01.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:ORACLEORA92DATABASE 1HMUDFO_1_1 tag=TAG20060630T162111 params=NU
LL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 20060630 16:28:51
启动 recover 于 20060630 16:28:51
使用通道 ORA_DISK_1
正在开始介质的恢复
完成介质的恢复
完成 recover 于 20060630 16:28:52
RMAN> shutdown immediate
数据库已卸载
Oracle 例程已关闭
RMAN> quit
恢复管理器完成。
完成了不完全恢复,这时再将b.ctl复制回来,继续恢复
C ocuments and SettingsAdministrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期五 6月 30 16:29:40 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 126950220 bytes
Fixed Size 453452 bytes
Variable Size 109051904 bytes
Database Buffers 16777216 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
ORA-01190: 控制文件或数据文件1来自于最后一个 RESETLOGS 之前
ORA-01110: 数据文件 1: 'D:ORACLEORADATATESTSYSTEM01.DBF'
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-01190: 控制文件或数据文件1来自于最后一个 RESETLOGS 之前
ORA-01110: 数据文件 1: 'D:ORACLEORADATATESTSYSTEM01.DBF'a
"控制文件或数据文件1来自于最后一个 RESETLOGS 之前"我认为是控制文件SCN和RODO的SCN不一致了,看看你有没有在归档模式下运行
很有可能是你在NOarchivelog模式下做的实验 |
|