楼主: susan_j

[备份恢复] 请教如何进行数据恢复

[复制链接]
论坛徽章:
5
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:兔
日期:2009-01-24 14:48:21
11#
 楼主| 发表于 2008-3-13 15:53 | 只看该作者
恩,对的,因为设了自动备份控制文件.

但我不太明白 restore controlfile from ' ';  

后面这个引号里头该怎么写.能不能请棉花糖给举个例子呢,实在感谢!

使用道具 举报

回复
论坛徽章:
138
19周年集字徽章-19
日期:2020-06-08 08:30:56马上加薪
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-18 16:42:022014年新春福章
日期:2014-02-18 16:42:02路虎
日期:2013-11-22 12:26:18问答徽章
日期:2014-05-08 12:15:31
12#
发表于 2008-3-13 16:01 | 只看该作者
假设这次全备生成的备份文件是2个,有一个是控制文件的备份叫a.ctl存放在d盘,就restore controlfile from 'D:\a.ctl';

D:\a.ctl你也可以替换成自动备份的控制文件,自动备份的控制文件的时间点在你那备份文件之后.删除表之前就行

使用道具 举报

回复
论坛徽章:
31
NBA常规赛纪念章
日期:2008-04-18 19:48:162011新春纪念徽章
日期:2011-02-18 11:43:36ITPUB十周年纪念徽章
日期:2011-11-01 16:21:152012新春纪念徽章
日期:2012-01-04 11:51:22
13#
发表于 2008-3-13 16:03 | 只看该作者
rman中,list backup可以看到的!

使用道具 举报

回复
论坛徽章:
10
授权会员
日期:2007-08-21 23:50:08ITPUB十周年纪念徽章
日期:2011-11-01 16:20:28ITPUB官方微博粉丝徽章
日期:2011-06-29 17:05:182010广州亚运会纪念徽章:轮滑
日期:2010-12-06 11:01:052010广州亚运会纪念徽章:高尔夫球
日期:2010-12-06 10:57:53辩论纪念章
日期:2010-11-15 09:41:552009新春纪念徽章
日期:2009-01-04 14:52:28ITPUB元老
日期:2008-07-10 16:47:26生肖徽章:虎
日期:2007-09-18 15:23:56茶鸡蛋
日期:2012-05-08 09:54:04
14#
发表于 2008-3-13 16:04 | 只看该作者
干吗非要重建控制文件呢?当前的控制文件就Ok阿~
棉花糖的第二种方法就可行阿~

使用道具 举报

回复
论坛徽章:
5
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:兔
日期:2009-01-24 14:48:21
15#
 楼主| 发表于 2008-3-13 16:57 | 只看该作者
原帖由 棉花糖ONE 于 2008-3-13 16:01 发表
假设这次全备生成的备份文件是2个,有一个是控制文件的备份叫a.ctl存放在d盘,就restore controlfile from 'D:\a.ctl';

D:\a.ctl你也可以替换成自动备份的控制文件,自动备份的控制文件的时间点在你那备份文件之后.删除表之前就行


哦哦,是是.明白了.

不过我刚用了第一种方法测试,依然是在restore database的时候报出:

ORA-01119: 创建数据库文件 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORA10G\TS1.DBF' 时出错
ORA-27038: 所创建的文件已存在
OSD-04010: 指定了 <create> 选项, 但文件已经存在

而不是显示有文件未命名哦!不知道是哪里出了错了.

使用道具 举报

回复
论坛徽章:
5
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:兔
日期:2009-01-24 14:48:21
16#
 楼主| 发表于 2008-3-13 17:03 | 只看该作者
有没有哪位做个测试过程贴上来参考一下呢? 谢谢,谢谢!

使用道具 举报

回复
论坛徽章:
122
现任管理团队成员
日期:2011-05-07 01:45:08
17#
发表于 2008-3-13 17:13 | 只看该作者
测试 RMAN不完全恢复未备份的表空间

1.环境:
Oracle9R2(9.2.0.7)+WindowsXP

2.条件:
(1)T1时间点数据库全备T1.BAK
--SQLPLUS
Connected to Oracle9i Enterprise Edition Release 9.2.0.7.0
Connected as SYS

SQL> SELECT file_id, file_name, tablespace_name FROM dba_data_files ORDER BY file_id;

   FILE_ID FILE_NAME                                                                        TABLESPACE_NAME
---------- -------------------------------------------------------------------------------- ------------------------------
         1 C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF                                      SYSTEM
         2 C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF                                     UNDOTBS
         3 C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF                                     UNDOTBS
         4 C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF                                USER_TAB_10M
         5 C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF                                USER_IND_10M
         6 C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF                                    PERFSTAT
         7 C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF                                        TEST
         8 C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF                                USER_TAB_10M

8 rows selected

Executed in 0.188 seconds

--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB (DBID=2540312515)
正在使用目标数据库控制文件替代恢复目录

RMAN> show all;

RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\ORACLEDB\ORA92\DATABASE\SNCFMYDB.ORA'; # default

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;

新的 RMAN 配置参数:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
已成功存储新的 RMAN 配置参数

RMAN> backup full database format='C:\T1.BAK';

启动 backup 于 20-8月 -07
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=18 devtype=DISK
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF
输入数据文件 fno=00006 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF
输入数据文件 fno=00004 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF
输入数据文件 fno=00005 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF
输入数据文件 fno=00007 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF
输入数据文件 fno=00008 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF
输入数据文件 fno=00002 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF
输入数据文件 fno=00003 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF
通道 ORA_DISK_1: 正在启动段 1 于 20-8月 -07
通道 ORA_DISK_1: 已完成段 1 于 20-8月 -07
段 handle=C:\T1.BAK comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:55
完成 backup 于 20-8月 -07

启动 Control File and SPFILE Autobackup 于 20-8月 -07
段 handle=C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-00 comment=NONE
完成 Control File and SPFILE Autobackup 于 20-8月 -07

--Alert.log
Mon Aug 20 11:45:34 2007
Starting control autobackup
Control autobackup written to DISK device
handle 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-00'

(2)创建表空间ABC,数据文件ABC.DBF,并再其上建立表MYDB.ABCTEST,查看当前SCN
--SQLPLUS
SQL> CREATE TABLESPACE ABC DATAFILE 'C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF' SIZE 5M;

Tablespace created

Executed in 2.062 seconds

SQL> CREATE TABLE MYDB.ABCTEST TABLESPACE ABC AS SELECT * FROM V$VERSION;

Table created

Executed in 0.25 seconds

SQL> SELECT * FROM MYDB.ABCTEST;

BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
PL/SQL Release 9.2.0.7.0 - Production
CORE 9.2.0.7.0 Production

TNS for 32-bit Windows: Version 9.2.0.7.0 - Production
NLSRTL Version 9.2.0.7.0 - Production

Executed in 0.015 seconds

SQL> SELECT DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER FROM DUAL;

GET_SYSTEM_CHANGE_NUMBER
------------------------
                 1284888

Executed in 0.11 seconds

--Alert.log
Mon Aug 20 11:46:25 2007
CREATE TABLESPACE ABC DATAFILE 'C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF' SIZE 5M


Mon Aug 20 11:46:26 2007
Starting control autobackup
Control autobackup written to DISK device
handle 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-01'
Completed: CREATE TABLESPACE ABC DATAFILE 'C:\ORACLEDB\ORA92\

(3)删除表空间ABC及其数据文件ABC.DBF
--SQLPLUS
SQL> DROP TABLESPACE ABC INCLUDING CONTENTS AND DATAFILES;

Tablespace dropped

Executed in 3.015 seconds

--Alert.log
Mon Aug 20 11:48:57 2007
DROP TABLESPACE ABC INCLUDING CONTENTS AND DATAFILES


Mon Aug 20 11:48:59 2007
Deleted file C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF
Starting control autobackup
Control autobackup written to DISK device
handle 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-02'
Completed: DROP TABLESPACE ABC INCLUDING CONTENTS AND DATAFIL

(4)T2时间点数据库全备T2.BAK
--RMAN
RMAN> backup full database format='C:\T2.BAK';

启动 backup 于 20-8月 -07
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF
输入数据文件 fno=00006 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF
输入数据文件 fno=00004 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF
输入数据文件 fno=00005 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF
输入数据文件 fno=00007 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF
输入数据文件 fno=00008 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF
输入数据文件 fno=00002 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF
输入数据文件 fno=00003 name=C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF
通道 ORA_DISK_1: 正在启动段 1 于 20-8月 -07
通道 ORA_DISK_1: 已完成段 1 于 20-8月 -07
段 handle=C:\T2.BAK comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:56
完成 backup 于 20-8月 -07

启动 Control File and SPFILE Autobackup 于 20-8月 -07
段 handle=C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-03 comment=NONE
完成 Control File and SPFILE Autobackup 于 20-8月 -07

--Alter.log
Mon Aug 20 11:50:33 2007
Starting control autobackup
Control autobackup written to DISK device
handle 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-03'

3.目的:
恢复MYDB.ABCTEST中的数据(表空间ABC,数据文件ABC.DBF)

4.步骤
(1)关闭数据库,进入NOMOUNT状态
--SQLPLUS
SQL> SHUTDOWN IMMEDIATE;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> STARTUP NOMOUNT;
ORACLE 例程已经启动。
(2)用RMAN恢复控制文件(使用创建表空间ABC后生成的控制文件备份)
--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB(未安装)
正在使用目标数据库控制文件替代恢复目录

RMAN> RESTORE CONTROLFILE FROM 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-01';--使用创建表空间ABC后生成的控制文件备份(根据Alert.log查出)

启动 restore 于 20-8月 -07

分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在恢复控制文件
通道 ORA_DISK_1: 恢复完成
正在复制控制文件
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL01.CTL
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL02.CTL
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL03.CTL
完成 restore 于 20-8月 -07
(3)用恢复后的控制文件MOUNT数据库,尝试基于SCN 1284888做不完全恢复.
--SQLPLUS
SQL> ALTER DATABASE MOUNT;

数据库已更改。

已用时间:  00: 00: 04.02
--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB (DBID=2540312515)
正在使用目标数据库控制文件替代恢复目录

RMAN> RUN
2> {
3> SET UNTIL SCN 1284888;
4> RESTORE DATABASE;
5> RECOVER DATABASE;
6> }

正在执行命令: SET until clause

启动 restore 于 20-8月 -07

分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=11 devtype=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 08/20/2007 12:53:10
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 9 found to restore
(4)手动建立数据文件9,RESTORE其他数据文件并RECOVER数据库,最后RESETLOGS方式打开数据库,验证结果
--SQLPLUS
SQL> ALTER DATABASE CREATE DATAFILE 9 AS 'C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF';

数据库已更改。

已用时间:  00: 00: 00.02
--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB (DBID=2540312515)
正在使用目标数据库控制文件替代恢复目录
RMAN> RUN
2> {
3> SET UNTIL SCN 1284888;
4> RESTORE DATAFILE 1,2,3,4,5,6,7,8;
5> RECOVER DATABASE;
6> }

正在执行命令: SET until clause

启动 restore 于 20-8月 -07

使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF
正将数据文件00002恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF
正将数据文件00003恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF
正将数据文件00004恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF
正将数据文件00005恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF
正将数据文件00006恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF
正将数据文件00007恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF
正将数据文件00008恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=C:\T1.BAK tag=TAG20070820T114438 params=NULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 20-8月 -07

启动 recover 于 20-8月 -07
使用通道 ORA_DISK_1

正在开始介质的恢复

存档日志线程 1 序列 1 已作为文件 C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 存在于磁盘上
存档日志文件名 =C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 线程 =1 序列 =1
完成介质的恢复
完成 recover 于 20-8月 -07
--SQLPLUS
SQL> ALTER DATABASE OPEN RESETLOGS;

数据库已更改。

已用时间:  00: 00: 09.04
SQL> SELECT * FROM MYDB.ABCTEST;

BANNER
----------------------------------------------------------------------------------------------------

Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
PL/SQL Release 9.2.0.7.0 - Production
CORE    9.2.0.7.0       Production
TNS for 32-bit Windows: Version 9.2.0.7.0 - Production
NLSRTL Version 9.2.0.7.0 - Production

已用时间:  00: 00: 00.00

成功恢复
*********************************************************************************************************************************************************
(2)'用RMAN恢复控制文件(使用创建表空间ABC前生成的控制文件备份)
--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB(未安装)
正在使用目标数据库控制文件替代恢复目录

RMAN> RESTORE CONTROLFILE FROM 'C:\ORACLEDB\ORA92\DATABASE\C-2540312515-20070820-00';--使用创建表空间ABC前生成的控制文件备份(根据Alert.log查出)

启动 restore 于 20-8月 -07

分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在恢复控制文件
通道 ORA_DISK_1: 恢复完成
正在复制控制文件
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL01.CTL
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL02.CTL
输出文件名=C:\ORACLEDB\ORA92\ORADATA\MYDB\CONTROL03.CTL
完成 restore 于 20-8月 -07
(3)'用恢复后的控制文件MOUNT数据库,尝试基于SCN 1284888做不完全恢复.
--SQLPLUS
SQL> ALTER DATABASE MOUNT;

数据库已更改。

已用时间:  00: 00: 04.02
--RMAN
恢复管理器: 版本9.2.0.7.0 - Production

Copyright (c) 1995, 2002, Oracle Corporation.  All rights reserved.

连接到目标数据库: MYDB (DBID=2540312515)
正在使用目标数据库控制文件替代恢复目录

RMAN> RUN
2> {
3> SET UNTIL SCN 1284888;
4> RESTORE DATABASE;
5> RECOVER DATABASE;
6> }

正在执行命令: SET until clause

启动 restore 于 20-8月 -07

分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=11 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF
正将数据文件00002恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF
正将数据文件00003恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF
正将数据文件00004恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF
正将数据文件00005恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF
正将数据文件00006恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF
正将数据文件00007恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF
正将数据文件00008恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=C:\T1.BAK tag=TAG20070820T135514 params=NULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 20-8月 -07

启动 recover 于 20-8月 -07
使用通道 ORA_DISK_1

正在开始介质的恢复

存档日志线程 1 序列 1 已作为文件 C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 存在于磁盘上
存档日志文件名 =C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 线程 =1 序列 =1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 08/20/2007 14:07:35
ORA-00283: recovery session canceled due to errors
RMAN-11003: failure during parse/execution of SQL statement: alter database recover logfile 'C:\ORAC
LEDB\ORA92\ORADATA\MYDB\REDO03.LOG'
ORA-00283: 恢复会话因错误而取消
ORA-01244: 未命名的数据文件由介质恢复添加至控制文件
ORA-01110: 数据文件 9: 'C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF'
(4)'手动建立数据文件9,RESTORE其他数据文件并RECOVER数据库,最后RESETLOGS方式打开数据库,验证结果
--SQLPLUS
SQL> ALTER DATABASE CREATE DATAFILE 9 AS 'C:\ORACLEDB\ORA92\ORADATA\MYDB\ABC.DBF';

数据库已更改。

已用时间:  00: 00: 00.02
--RMAN
RMAN> RUN
2> {
3> SET UNTIL SCN 1284888;
4> RESTORE DATAFILE 1,2,3,4,5,6,7,8;
5> RECOVER DATABASE;
6> }

正在执行命令: SET until clause

启动 restore 于 20-8月 -07

使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\SYSTEM01.DBF
正将数据文件00002恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS01.DBF
正将数据文件00003恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\UNDOTBS02.DBF
正将数据文件00004恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M01.DBF
正将数据文件00005恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_IND_10M01.DBF
正将数据文件00006恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\PERFSTAT01.DBF
正将数据文件00007恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\TEST01.DBF
正将数据文件00008恢复到C:\ORACLEDB\ORA92\ORADATA\MYDB\USER_TAB_10M02.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=C:\T1.BAK tag=TAG20070820T135514 params=NULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 20-8月 -07

启动 recover 于 20-8月 -07
使用通道 ORA_DISK_1

正在开始介质的恢复

存档日志线程 1 序列 1 已作为文件 C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 存在于磁盘上
存档日志文件名 =C:\ORACLEDB\ORA92\ORADATA\MYDB\REDO03.LOG 线程 =1 序列 =1
完成介质的恢复
完成 recover 于 20-8月 -07
--SQLPLUS
SQL> ALTER DATABASE OPEN RESETLOGS;

数据库已更改。

已用时间:  00: 00: 09.04
SQL> SELECT * FROM MYDB.ABCTEST;

BANNER
----------------------------------------------------------------------------------------------------

Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
PL/SQL Release 9.2.0.7.0 - Production
CORE    9.2.0.7.0       Production
TNS for 32-bit Windows: Version 9.2.0.7.0 - Production
NLSRTL Version 9.2.0.7.0 - Production

已用时间:  00: 00: 00.00

成功恢复

使用道具 举报

回复
论坛徽章:
122
现任管理团队成员
日期:2011-05-07 01:45:08
18#
发表于 2008-3-13 17:14 | 只看该作者
n 久前的实验~

lz以后记住,添加数据文件后,立即对新的数据文件和controlfile 做rman备份

使用道具 举报

回复
论坛徽章:
24
授权会员
日期:2007-03-03 23:55:31ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15ITPUB季度 技术新星
日期:2011-11-18 16:54:31玉石琵琶
日期:2012-02-21 15:04:38ITPUB 11周年纪念徽章
日期:2012-10-09 18:06:202013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:42:02马上有房
日期:2014-02-18 16:42:02
19#
发表于 2008-3-13 17:16 | 只看该作者
原帖由 zergduan 于 2008-3-13 17:14 发表
n 久前的实验~

lz以后记住,添加数据文件后,立即对新的数据文件和controlfile 做rman备份


创建之前也要来一次备份,之后再来一次

使用道具 举报

回复
论坛徽章:
5
2008新春纪念徽章
日期:2008-02-13 12:43:03生肖徽章2007版:兔
日期:2009-01-24 14:48:21
20#
 楼主| 发表于 2008-3-13 17:19 | 只看该作者
原帖由 zergduan 于 2008-3-13 17:14 发表
n 久前的实验~

lz以后记住,添加数据文件后,立即对新的数据文件和controlfile 做rman备份


先谢谢zergduan,再慢慢看.

其实这只是自己假想出来的一个测试.因为最近想尽可能多做一些不同情况下的恢复测试.

不过你的提醒我会记住的!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表