oracle如何从asm中查看文件,在Oracle中,ASM文件和OS文件互相转换有哪些方法?

本文详细介绍了如何在Oracle ASM和操作系统(OS)文件之间进行转换,包括setnewname、convertdatafile、dbms_file_transfer.copy_file、backupascopydatafile以及ASMCMD的cp命令等操作步骤,涉及离线、在线、恢复、切换数据文件等多个环节。
摘要由CSDN通过智能技术生成

A答案如下所示:

答案:主要采用set newname、convert datafile、dbms_file_transfer.copy_file、backup as copy datafile、alter database rename file这几种办法。

首先介绍OS文件到ASM文件转换的方法。

①set newname方式run{

crosscheck backup;

sql 'alter tablespace testdg offline immediate';

set newname for datafile 14 to'+DATA';

restore tablespace testdg;

switch datafile 14;

recover tablespace testdg;

sql 'alter tablespace testdg online';

}

②convert 好

RMAN下:convert datafile '/home/oracle/testdg.dbf' format '+DATA';

SQL下:alter tablespace testdg offline ;

alter tablespace testdg rename datafile '/home/oracle/testdg.dbf' to '+DATA/orclasm/datafile/testdg.284.868895277';

recover datafile 14;

alter tablespace testdg online;

③dbms_file_transfercreate directory asmsrc as'+DATA/orclasm/datafile/';

create directory osdesc as '/home/oracle/';

alter tablespace testdg offline;

exec dbms_file_transfer.copy_file('osdesc','testdg.dbf','ASMSRC','testdg.dbf');

alter database rename file '/home/oracle/testdg.dbf'  to '+DATA/orclasm/datafile/testdg.dbf';

alter tablespace testdg online ;

④backup as copyrun{

shutdown immediate;

startup mount;

backup as copy datafile 14 format '+DATA';

}

SWITCH TABLESPACE testdg TO COPY;

alter database open;

⑤在ASMCMD中cp拷贝alter tablespace testdg offline;

[root@rhel6_lhr ~]# cp home/oracle/testdg.dbf home/grid/testdg.dbf

[root@rhel6_lhr ~]# chown grid:oinstall /home/grid/testdg.dbf

[root@rhel6_lhr ~]# su - grid

ASMCMD> cp /home/grid/testdg.dbf +DATA/orclasm/datafile/testdg.dbf

copying /home/grid/testdg.dbf -> +DATA/orclasm/datafile/testdg.dbf

ASMCMD>

alter database rename file '/home/oracle/testdg.dbf'  to '+DATA/orclasm/datafile/testdg.dbf';

alter tablespace testdg online ;

而ASM文件到OS文件转换的方法有如下几种:

①recover datafile

在RMAN下:convert datafile '+DATA/orclasm/datafile/testdg.277.868887219' format '/home/oracle/testdg.dbf';

在SQL下:alter tablespace testdg offline ;

alter tablespace testdg rename datafile '+DATA/orclasm/datafile/testdg.277.868887219' to '/home/oracle/testdg.dbf';

recover datafile 14;

alter tablespace testdg online;

②dbms_file_transfercreate directory asmsrc as'+DATA/orclasm/datafile/';

create directory osdesc as '/home/oracle/';

alter tablespace testdg offline;

exec dbms_file_transfer.copy_file('ASMSRC','testdg.282.868891371','osdesc','testdg.dbf');

alter database rename file'+DATA/orclasm/datafile/testdg.282.868891371'  to '/home/oracle/testdg.dbf';

alter tablespace testdg online ;

③set newnamerun{

shutdown immediate;

startup mount;

set newname for datafile 14 to '/home/oracle/testdg.dbf';

restore datafile 14;

switch datafile 14;

recover datafile 14;

alter database open;

}

④switch tablespacerun{

shutdown immediate;

startup mount;

backup as copy  datafile 14 format '/home/oracle/testdg.dbf';

}

switch tablespace testdg to copy;

alter database open;

⑤ASMCMD中的cp拷贝alter tablespace testdg offline;

[root@rhel6_lhr ~]# su - grid

ASMCMD> cp +DATA/orclasm/datafile/testdg.dbf  /home/grid/testdg.dbf

copying +DATA/orclasm/datafile/testdg.dbf -> /home/grid/testdg.dbf

ASMCMD>

[root@rhel6_lhr ~]# cp /home/grid/testdg.dbf /home/oracle/testdg.dbf

[root@rhel6_lhr ~]# chown oracle:oinstall /home/oracle/testdg.dbf

alter database rename file'+DATA/orclasm/datafile/testdg.dbf'  to '/home/oracle/testdg.dbf';

alter tablespace testdg online ;

&说明:

有关ASM和OS文件互相转换的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-1400516/。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值