rman 恢复drop 表空间模拟恢复

 
一、查询目前表空间和数据文件名称

SQL> select name from v$tablespace;

NAME

------------------------------

SYSTEM

UNDOTBS1

SYSAUX

USERS

TEMP

SQL> select name from v$datafile;

 

NAME

-------------------------------------------------------

D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSTEM01.DBF

D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\UNDOTBS01.DBF

D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSAUX01.DBF

D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\USERS01.DBF

 

二、新建一个表空间

SQL> create tablespace wyl datafile 'D:\oracle\product\10.2.0\oradata\tsing\wyl.

dbf' size 10m ;

表空间已创建。

三、创建t_wyl的表

SQL> create table t_wyl tablespace wyl as select * from v$database;

 

表已创建。

 

SQL> select count(*) from t_wyl;

 

  COUNT(*)

----------

         1

四、登录rman 设置

CONFIGURE CONTROLFILE AUTOBACKUP ON; # default

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:\rman\%F'; # default

CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'd:\rman\%U';

 

五、备份全库

RMAN> backup database;

 

启动 backup 于 22-3月 -13

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=147 devtype=DISK

通道 ORA_DISK_1: 启动全部数据文件备份集

通道 ORA_DISK_1: 正在指定备份集中的数据文件

输入数据文件 fno=00001 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSTEM01.DBF

输入数据文件 fno=00003 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSAUX01.DBF

输入数据文件 fno=00002 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\UNDOTBS01.DBF

 

输入数据文件 fno=00005 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\WYL.DBF

输入数据文件 fno=00004 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\USERS01.DBF

通道 ORA_DISK_1: 正在启动段 122-3月 -13

通道 ORA_DISK_1: 已完成段 122-3月 -13

段句柄=D:\RMAN\01O56JJO_1_1 标记=TAG20130322T204544 注释=NONE

通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:45

完成 backup 于 22-3月 -13

 

启动 Control File and SPFILE Autobackup 于 22-3月 -13

段 handle=D:\RMAN\C-3282574446-20130322-00 comment=NONE

完成 Control File and SPFILE Autobackup 于 22-3月 -13

六、drop wyl 表空间

SQL> drop tablespace wyl including contents and datafiles;

表空间已删除。

七、关闭数据库,移动数据文件到其他位置(模拟数据丢失)

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

 



八、恢复

 1、通过alert 查找出drop 表空间的时间

 Completed: drop tablespace wyl including contents and datafiles

Fri Mar 22 20:54:53 2013

 2、恢复控制文件到rman全备时段

 D:\RMAN\C-3282574446-20130322-00(控制文件)

  执行控制文件恢复

  startup;

  RMAN> restore controlfile from 'D:\RMAN\C-3282574446-20130322-00';

 

启动 restore 于 22-3月 -13

使用目标数据库控制文件替代恢复目录

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=157 devtype=DISK

 

通道 ORA_DISK_1: 正在复原控制文件

通道 ORA_DISK_1: 恢复完成, 用时: 00:00:03

输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\CONTROL01.CTL

输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\CONTROL02.CTL

输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\CONTROL03.CTL

完成 restore 于 22-3月 -13

3 mount 数据库(此时会启用恢复后的控制文件)

RMAN> alter database mount;

数据库已装载

释放的通道: ORA_DISK_1

4 restore 数据库

 RMAN> restore database;

 

启动 restore 于 22-3月 -13

启动 implicit crosscheck backup 于 22-3月 -13

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=156 devtype=DISK

已交叉检验的 1 对象

完成 implicit crosscheck backup 于 22-3月 -13

 

启动 implicit crosscheck copy 于 22-3月 -13

使用通道 ORA_DISK_1

完成 implicit crosscheck copy 于 22-3月 -13

 

搜索恢复区域中的所有文件

正在编制文件目录...

没有为文件编制目录

 

使用通道 ORA_DISK_1

 

通道 ORA_DISK_1: 正在开始恢复数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件

正将数据文件00001恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSTEM01.DBF

正将数据文件00002恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\UNDOTBS01.DBF

正将数据文件00003恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\SYSAUX01.DBF

正将数据文件00004恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\USERS01.DBF

正将数据文件00005恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\WYL.DBF

通道 ORA_DISK_1: 正在读取备份段 D:\RMAN\01O56JJO_1_1

通道 ORA_DISK_1: 已恢复备份段 1

段句柄 = D:\RMAN\01O56JJO_1_1 标记 = TAG20130322T204544

通道 ORA_DISK_1: 恢复完成, 用时: 00:01:05

完成 restore 于 22-3月 -13

5 recover 数据库

RMAN> run {

2> sql 'alter session set nls_date_format ="yyyy-mm-dd hh24:mi:ss"';

3> set until time='2013-03-22 20:52:40';

4> recover database;}

sql 语句: alter session set nls_date_format ="yyyy-mm-dd hh24:mi:ss"

正在执行命令: SET until clause

启动 recover 于 22-3月 -13

使用通道 ORA_DISK_1

正在开始介质的恢复

存档日志线程 1 序列 2 已作为文件 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\REDO01.L

OG 存在于磁盘上

存档日志文件名 =D:\ORACLE\PRODUCT\10.2.0\ORADATA\TSING\REDO01.LOG 线程 =1 序列 =

2

介质恢复完成, 用时: 00:00:00

完成 recover 于 22-3月 -13

7重新打开数据库
RMAN> alter database open resetlogs
2> ;
 
数据库已打开

猜你喜欢

转载自www.cnblogs.com/vmsysjack/p/12584772.html