11g Rman新特性SET NEWNAME

曾经写过一篇关于如何将RAC的备份异地恢复到单点上的实验过程,连接如下:

http://blog.csdn.net/jyjxs/article/details/8727492

其中用到了RMANSET NEWNAME选项,在10g中针对每个数据文件都要set newname一下,如果数据文件多达上百个可能就要晕菜了!

前几天偶然翻看文档发现11g新特性,可以根据表空间set newname

RMAN支持下列命令列出的优先顺序:

1SET NEWNAME FOR DATAFILE and SET NEWNAME FOR TEMPFILE

2SET NEWNAME FOR TABLESPACE

3SET NEWNAME FOR DATABASE

也就是说不光支持表空间的重新制定,还包括数据文件及整个数据库的重新制定。

————————————————————————————————————————————

变量概述

—————————————————————————————————————————————

b 指定的文件名 ​​的目录路径中剥离。例如,如果一个数据文件被命名为/ ORADATA /prod/ financial.dbf,%b可以代表financial.dbf结果。

f指定新的名称生成的数据文件的绝对文件号。例如,如果被复制的数据是文件2,然后%F产生的值为2

I指定DBID

N指定表空间名称

U指定的格式如下:data-D-%d_id-%I_TS-%N_FNO-%f

————————————————————————————————————————————

一、使用SET NEWNAME制定新的文件名:

RUN

{

SET NEWNAME FOR DATAFILE 1 TO '/oradata1/system01.dbf';

SET NEWNAME FOR DATAFILE 2 TO '/oradata2/sysaux01.dbf';

SET NEWNAME FOR DATAFILE 3 TO '/oradata3/undotbs01.dbf';

SET NEWNAME FOR DATAFILE 4 TO '/oradata4/users01.dbf';

SET NEWNAME FOR DATAFILE 5 TO '/oradata5/users02.dbf';

SET NEWNAME FOR TEMPFILE 1 TO '/oradatat/temp01.dbf';

DUPLICATE TARGET DATABASE TO dupdb

SKIP TABLESPACE tools

LOGFILE

GROUP 1 ('/duplogs/redo01a.log',

'/duplogs/redo01b.log') SIZE 4M REUSE,

GROUP 2 ('/duplogs/redo02a.log',

'/duplogs/redo02b.log') SIZE 4M REUSE;

}

二、使用SET NEWNAME制定新的表空间和新的文件名

RUN

{

SET NEWNAME FOR TABLESPACE USERS TO '/ ORADATA%f /%b';

SET NEWNAME FORDATAFILE 1 TO '/ oradata1/system01.dbf ';

SET NEWNAME FOR DATAFILE 2 TO '/ oradata2/sysaux01​​.dbf ' ;

SET NEWNAME FOR DATAFILE 3 TO '/ oradata3/undotbs01.dbf ';

SET NEWNAME FOR TEMPFILE 1 TO '/ oradatat/temp01.dbf ';

DUPLICATE TARGET DATABASE TO dupdb
SKIP TABLESPACE tools

LOGFILE

GROUP 1('/ duplogs/redo01a.log',

'/ duplogs/redo01b.log')SIZE 4M REUSE,

GROUP 2('/ duplogs/redo02a.log ',

' / duplogs/redo02b.log')SIZE 4M REUSE;

}

三、使用SET NEWNAME制定新的数据库

RUN

{

SET NEWNAME FOR DATABASE '/ ORADATA /%U';

DUPLICATE TARGET DATABASE TO dupdb
SKIP TABLESPACE tools

LOGFILE

GROUP 1('/ duplogs/redo01a.log',

'/ duplogs/redo01b.log)SIZE 4M REUSE,

GROUP 2('/ duplogs/redo02a.log',

' / duplogs/redo02b.log')SIZE 4M REUSE;

}

下表为SET NEWNAME FOR database转换后的结果:

变换前的文件名 表空间名 数据文件号 转换为'/oradata/%U'格式后的结果

.../system01.dbf

SYSTEM

1

/oradata/data-D-PROD_id-87650928_TS-SYSTEM_FNO-1

.../sysaux01.dbf

SYSAUX

2

/oradata/data-D-PROD_id-87650928_TS-SYSAUX_FNO-2

.../undotbs01.dbf

UNDOTS

3

/oradata/data-D-PROD_id-87650928_TS-UNDOTS_FNO-3

.../users01.dbf

USERS

4

/oradata/data-D-PROD_id-87650928_TS-USERS_FNO-4

.../users02.dbf

USERS

5

/oradata/data-D-PROD_id-87650928_TS-USERS_FNO-5

.../temp01.dbf

TEMP

1

/oradata/data-D-PROD_id-87650928_TS-TEMP_FNO-1


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值