一、ASM文件的管理
1、 ASM文件概述:
ASM文件的命名不同于普通文件的命名,它的文件名一般不直接指定,由ASM系统自
己生成,并且其管理方式是OMF。如果人为指定,则文件的管理方式就不再是OMF了。
使用ASM文件名的时机:
a. 引用ASM文件
b. 创建ASM文件
2、文件的命名规则:
(1)完全命名:
格式:+diskgroup_name/database_name/filetype/file_name.xxx.xxxx
作用:只能用于引用,不能在创建ASM文件时指定。
说明:xxx表示数字,是唯一的。
例如:+dgdata/info/datafile/system.256.78684974
(2)数字命名:
格式:file_name.xxx.xxxx
作用:只能用于引用,不能在创建ASM文件时指定。
说明:xxx表示数字,是唯一的。
例如:system.256.78684974
(3)不完全命名:
格式:+diskgroup_name
作用:用于创建ASM文件,在创建文件时指定,由ASM自动生成对应的文件名。
说明:文件是OMF。
例如:create tablespace test datafile ‘+dgdata’ size 100m;
(4)带模板的不完全命名:
格式:+diskgroup_name(template_name)
作用:用于创建ASM文件,在创建文件时指定,由ASM自动生成对应的文件名。
说明:文件是OMF。
例如:create tablespace test datafile ‘+dgdata(my_template)’ size 100m;
(5)别名命名:
格式:+diskgroup_name/directory1/…/directoryN/file_name.dbf
作用:用于创建ASM文件,在创建文件时指定。本质上它创建了一个别名和一
个ASM文件,并且这个别名指向这个ASM文件。
说明:如果以指定别名的方式创建文件,则文件不是OMF。
在ASM中目录不能递归创建,必须一层一层的创建。删除也是一样。
例如:create tablespace test
datafile ‘+dgdata/info/test_01.dbf’ size 150m;
二、ASM目录的管理(可被ASMCMD替代)
1、 ASM中也存在目录概念。
2、 + ------ 表示根目录
3、 ASM中目录不能递归创建
4、 ASM中不能直接删除非空目录,需要先删目录下的内容,然后再删上层目录。
5、 ASM中目录的操作:
a. 增加目录
命令:
alter diskgroup diskgroup_name
add directory ‘+diskgroup_name/directory1/directory_name’
说明:
增加目录时,上层目录必须存在,否则增加失败。
e.g.:
alter diskgroup dgdata1 add
add directory ‘+dgdata1/info/datafile’;
b、删除目录
命令:
alter diskgroup diskgroup_name
drop directory ‘+diskgroup_name/directory1/directory_name’
说明:
删除目录时,目录应为空,否则删除失败。
e.g.:
alter diskgroup dgdata1 add
drop directory ‘+dgdata1/info/datafile’;
三、ASM别名的管理(可被ASMCMD替代)
1、别名的添加:
命令:
alter diskgroup diskgroup_name
add alias alias_name for ‘asm_file’;
e.g.:
alter diskgroup dgdata1
add alias ‘+dgdata1/salse.dbf’ for ‘+dgdata1/info/datafile/system.256.78684974’;
2、别名的删除:
命令:
alter diskgroup diskgroup_name
drop alias alias_name;
e.g.:
alter diskgroup dgdata1
add alias ‘+dgdata1/salse.dbf’ ;
3、查看别名:
别名信息存放在视图v$asm_alias里。视图中
ALIAS_DIRECTORY-----表示别名是否为目录
SYSTEM_CREATED------表示别名是否由系统创建
默认每一个ASM文件都有别名,那就是自己。
使用下面命令查看:
select * from v$asm_alias;
4、别名只能针对文件,不能为目录建立别名。
四、ASMCMD的使用
ASMCMD是ASM提供的一个工具。它实现了ASM磁盘组上文件及目录的管理。具体可以实现以下功能:
1、 创建目录(mkdir)
2、 删除目录(rm)
3、 目录切换(cd)
4、 创建别名(mkalias)
5、 删除别名(rmalias)
6、 显示当前目录(pwd)
7、 显示文件条目(ls)
命令的使用:
ASMCMS中每个命令都有自己的帮助系统,使用方法为: help command
使用说明:
(1)创建目录(mkdir)
asmcmd> mkdir directory_name
e.g:
asmcmd> mkdir info
(2)删除目录(rm)
asmcmd >rm file_name
e.g:
asmcmd>rm test_01.dbf
asmcmd>rm *
(3)目录切换(cd)
asmcmd> cd directory_name
e.g:
asmcmd> cd info
(4)创建别名(mkalias)
asmcmd>mkalias asm_file_name alias_name
备注:不能对目录建立别名
e.g:
asmcmd>mkalias ‘+dgdata/info/datafile/system.256.78684974’ system.dbf
(5)删除别名(rmalias)
asmcmd> rmalias alias_name
asmcmd> rmalias system.dbf
备注:别名不能用【rm】命令删除,否则原文件将会被删除。
(6)显示当前目录(pwd)
asmcmd> pwd
(7)显示文件条目(ls)
asmcmd> ls
备注:
(1)ASM中目录不能递归创建,必须层层创建。删除时也不能删除非空目录,需先删除
目录下文件,然后方可删除目录。
(2)在ASMCMD中:
mkdir == alter diskgroup diskgroup_name add directory
rm directory_name == alter diskgroup diskgroup_name drop directory ‘xxxx’
mkalias == alter diskgroup diskgroup_name add alias
rmalias == alter diskgroup diskgroup_name drop alias
它们的表现形式不一样,但本质是一样的,有异曲同工之效。
(3)别名只对文件有效,不能对目录创建别名
五、其他
1、 修改ASM磁盘组重平衡的速度。
命令:
alter diskgroup diskgroup_name rebalance power N;(N=0、1、2、… 11)
说明:
字母 N 代表了重平衡的速度。0表示关闭重平衡功能;1速度最小,吞吐量也最小,
对用户影响也最小,11速度最快,吞吐量最大,对用户影响最大。默认为1.
e.g:
alter diskgroup dgdata2 rebalance power 3;
#修改磁盘组dgdata2的重平衡速度为3。
oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html