ITPub博客

首页 > 数据库 > Oracle > ASM别名的管理

ASM别名的管理

Oracle 作者:oraclesuperman 时间:2015-03-27 09:16:36 0 删除 编辑

今天用RMAN把一个本地磁盘的文件COPY到ASM,起了一样的名字:

RMAN>copy datafile 6 to '+DISK_GROUP2/TEST/TEST.DBF';

我们都知道ASM文件名字的格式是固定的:

+group/dbname/file type/tag.file.incarnation

我们实际到ASM内部看一下,它做了什么:

C:\Documents and Settings\oracle>set ORACLE_SID=+ASM

C:\Documents and Settings\oracle>asmcmd
ASMCMD> ls
DISK_GROUP1/
DISK_GROUP2/
RMAN_GROUP/
ASMCMD> cd disk_group2
ASMCMD> ls
DEVDB/
TEST/
ASMCMD> cd test
ASMCMD> ls
test.dbf
ASMCMD> ls -l
Type      Redund  Striped  Time              Sys  Name
                                             N    test.dbf => +DISK_GROUP2/DEVDB/DATAFILE/TEST.290.655818003
ASMCMD>

我们发现它在RMAN指定的目录上创建了ASM的别名,指向实际的datafile,也就是ASM文件为了避免重名和OMF特性,必须指定它的格式,那我们再为它创建个别名是否可以呢?

SQL> alter diskgroup DISK_GROUP2 add alias '+DISK_GROUP2/TEST/TEST2.DBF' for '+DISK_GROUP2/DEVDB/DATAFILE/TEST.290.655818003';
alter diskgroup DISK_GROUP2 add alias '+DISK_GROUP2/TEST/TEST2.DBF' for '+DISK_GROUP2/DEVDB/DATAFILE/TEST.290.655818003'
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15176: file '+DISK_GROUP2/DEVDB/DATAFILE/TEST.290.655818003' already has an
alias associated with it

它会认为这个别名已经存在,修改别名是否可以呢?

SQL> alter diskgroup DISK_GROUP2 rename alias '+DISK_GROUP2/TEST/TEST.DBF' to '+DISK_GROUP2/TEST/TEST2.DBF';

Diskgroup altered.

呵呵,可以

ASMCMD> ls -l
Type      Redund  Striped  Time              Sys  Name
                                             N    TEST2.DBF => +DISK_GROUP2/DEVDB/DATAFILE/TEST.290.655818003

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29313086/viewspace-1475341/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-03-20

  • 博文量
    178
  • 访问量
    422831