oracle 如何备份.bak,Oracle备份如何到异机还原

--步骤5.恢复控制文件,装载数据库

rman target /

set dbid 1320546556

restore controlfile from 'e:\bk\controlfile\BAK_CTL_FILE_6LO6SON4_1_1_20130412';

启动 restore 于 2013-04-11 13:58:58

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

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: SID=129 设备类型=DISK

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

通道 ORA_DISK_1: 还原完成, 用时: 00:00:01

输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL

输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL02.CTL

输出文件名=F:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL03.CTL

完成 restore 于 2013-04-11 13:59:00

--步骤6.将DB启动到mout状态

alter database mount;

数据库已装载

释放的通道: ORA_DISK_1

--加载备份目录

CATALOG START WITH 'E:\bk';

搜索与样式 E:\bk 匹配的所有文件

数据库未知文件的列表

====================================

文件名: E:\bk\controlfile\BAK_C-1320546556-20130411-03

文件名: E:\bk\controlfile\BAK_CTL_FILE_65O6QILO_1_1_20130411

文件名: E:\bk\controlfile\BAK_SPFILE_66O6QILQ_1_1_20130411

文件名: E:\bk\data\BAK_60O6QIGV

文件名: E:\bk\data\BAK_61O6QIGV

文件名: E:\bk\data\BAK_62O6QIH1

文件名: E:\bk\data\BAK_63O6QIH1

文件名: E:\bk\data\BAK_64O6QILM

是否确实要将上述文件列入目录 (输入 YES 或 NO)? yes

正在编制文件目录...

目录编制完毕

已列入目录的文件的列表

======================

文件名: E:\bk\controlfile\BAK_C-1320546556-20130411-03

文件名: E:\bk\controlfile\BAK_CTL_FILE_65O6QILO_1_1_20130411

文件名: E:\bk\controlfile\BAK_SPFILE_66O6QILQ_1_1_20130411

文件名: E:\bk\data\BAK_60O6QIGV

文件名: E:\bk\data\BAK_61O6QIGV

文件名: E:\bk\data\BAK_62O6QIH1

文件名: E:\bk\data\BAK_63O6QIH1

文件名: E:\bk\data\BAK_64O6QILM

--步骤7.restore 数据库

7.1 恢复目录不同的情况:

到Target 库查询一下:

SQL> select trim(file_id),trim(file_name) from dba_data_files ORDER BY FILE_ID ASC;

1 E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF

2 E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF

3 E:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF

4 E:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF

6 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY02.DBF

7 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY03.DBF

8 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY04.DBF

9 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY05.DBF

11 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY06.DBF

12 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY07.DBF

13 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY08.DBF

14 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY09.DBF

15 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY10.DBF

16 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY01.DBF

17 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY11.DBF

18 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY12.DBF

19 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY13.DBF

20 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY14.DBF

21 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY15.DBF

22 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY16.DBF

23 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY17.DBF

24 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY18.DBF

25 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY19.DBF

26 E:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY20.DBF

SQL>select trim(file_id),trim(file_name) from dba_temp_files;

1 E:\APP\ADMINISTRATOR\ORADATA\ORCL\TEMP01.DBF

select 'SET NEWNAME FOR DATAFILE'|| ' '||file_id||' '||'TO'|| ' '||''''||trim(file_name)||'''' ||';'

from dba_data_files ORDER BY FILE_ID ASC;

---如下实例:

RUN

{

# rename the datafiles

SET NEWNAME FOR DATAFILE 1 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF';

SET NEWNAME FOR DATAFILE 2 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF';

SET NEWNAME FOR DATAFILE 3 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF';

SET NEWNAME FOR DATAFILE 4 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF';

SET NEWNAME FOR DATAFILE 6 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY02.DBF';

SET NEWNAME FOR DATAFILE 7 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY03.DBF';

SET NEWNAME FOR DATAFILE 8 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY04.DBF';

SET NEWNAME FOR DATAFILE 9 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY05.DBF';

SET NEWNAME FOR DATAFILE 11 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY06.DBF';

SET NEWNAME FOR DATAFILE 12 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY07.DBF';

SET NEWNAME FOR DATAFILE 13 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY08.DBF';

SET NEWNAME FOR DATAFILE 14 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY09.DBF';

SET NEWNAME FOR DATAFILE 15 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY10.DBF';

SET NEWNAME FOR DATAFILE 16 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY01.DBF';

SET NEWNAME FOR DATAFILE 17 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY11.DBF';

SET NEWNAME FOR DATAFILE 18 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY12.DBF';

SET NEWNAME FOR DATAFILE 19 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY13.DBF';

SET NEWNAME FOR DATAFILE 20 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY14.DBF';

SET NEWNAME FOR DATAFILE 21 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY15.DBF';

SET NEWNAME FOR DATAFILE 22 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY16.DBF';

SET NEWNAME FOR DATAFILE 23 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY17.DBF';

SET NEWNAME FOR DATAFILE 24 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY18.DBF';

SET NEWNAME FOR DATAFILE 25 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY19.DBF';

SET NEWNAME FOR DATAFILE 26 TO 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\VPAY20.DBF';

SQL "ALTER DATABASE RENAME FILE ''E:\app\Administrator\oradata\orcl\REDO01.LOG''

TO ''F:\app\Administrator\oradata\orcl\REDO01.LOG'' ";

SQL "ALTER DATABASE RENAME FILE ''E:\app\Administrator\oradata\orcl\REDO02.LOG''

TO ''F:\app\Administrator\oradata\orcl\REDO02.LOG'' ";

SQL "ALTER DATABASE RENAME FILE ''E:\app\Administrator\oradata\orcl\REDO03.LOG''

TO ''F:\app\Administrator\oradata\orcl\REDO03.LOG'' ";

RESTORE DATABASE;

SWITCH DATAFILE ALL;

}

对switch datafile all的说明:

--对于nocatalog 模式下,rman备份的信息是保存在控制文件里的,包括文件的路径信息。 这里的switch datafile all的作用,就是更新控制文件里的信息。0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值