在ASM实例中,所有的存储于ASM磁盘组中的文件对于操作系统命令而言是不可访问的,因此也无法使用常规的命令来操纵ASM磁盘中的文件。所幸的是,我们有ASMCMD工具来代替操作系统命令来完成这部分工作。ASMCMD工具提供了类似于操作系统的常用命令,如ls , du ,find,cd ,rm ,mkdir等等。借助这些工具可以更轻松的完成ASM实例的相关管理工作。
ASMCMD使用实例  
 启动前要设定ORACLE_SID环境变量
$ export ORACLE_SID=+ASM    
 $ asmcmd
ASMCMD> help                 --在asmcmd命令提示符下,输入help [命令] ,则显示该命令帮助信息
        asmcmd [-p] [command]           --该方式可以直接完成相应的功能而不需要进入到ASMCMD提示符下
         The environment variables ORACLE_HOME and ORACLE_SID determine the 
         instance to which the program connects, and ASMCMD establishes a 
         bequeath connection to it, in the same manner as a SQLPLUS / AS 
         SYSDBA.  The user must be a member of the SYSDBA group.
         Specifying the -p option allows the current directory to be displayed 
         in the command prompt, like so:
         ASMCMD [+DATAFILE/ORCL/CONTROLFILE] >
         [command] specifies one of the following commands, along with its
         parameters.
         Type "help [command]" to get help on a specific ASMCMD command.
         commands:
         --------
         cd
         du
         find
         help
         ls
         lsct
         lsdg
         mkalias
         mkdir
         pwd
         rm
         rmalias
 ASMCMD> help lsct     --查看命令的具体用法,本例为lsct 
         lsct [-H] [group]
         List all clients and their attributes from V$ASM_CLIENT.  If group is 
         specified, then return only information on that group.
         The -H flag suppresses the column headers from the output.
$ asmcmd -p ls -l        --无需进入到ASMCMD命令提示符下完成相应的功能
    State    Type    Rebal  Unbal  Name
     MOUNTED  NORMAL  N      N      DG1/
     MOUNTED  NORMAL  N      N      DG2/
     MOUNTED  EXTERN  N      N      REV/
ASMCMD> ls -l                          --查看磁盘组的基本信息
    State    Type    Rebal  Unbal  Name
     MOUNTED  NORMAL  N      N      DG1/
     MOUNTED  NORMAL  N      N      DG2/
     MOUNTED  EXTERN  N      N      REV/
 ASMCMD> ls -s                          --查看磁盘组的详细信息,如磁盘大小,可用空间,扇区大小等
    Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
        512   4096  1048576      3058     1498                0             749              0  DG1/
        512   4096  1048576       200       98                0              49              0  DG2/
        512   4096  1048576      3074     2949                0            2949              0  REV/ 
ASMCMD> ls -ld      --查看目录信息
 Type  Redund  Striped  Time             Sys  Name
                                         Y    czmmiao/ 
ASMCMD> du                             --查看当前目录磁盘已使用的容量
    Used_MB      Mirror_used_MB
        804                1541
     ASMCMD> pwd                            --显示当前路径
     + 
ASMCMD> cd DG1            --cd 命令改变当前目录
ASMCMD> pwd
     +DG1 
ASMCMD> find -t datafile +DG1/asmdb sys*     --find 用于查找对象,-t参数指定对象类型,对象类型必须是v$asm_file.type中的对象类型
    +DG1/asmdb/DATAFILE/SYSAUX.261.734885459
     +DG1/asmdb/DATAFILE/SYSTEM.259.734885389 
ASMCMD> cd +DG1/asmdb/DATAFILE/
 ASMCMD> mkalias EXAMPLE.264.800386585 aaa    --给对象创建别名 
 ASMCMD> ls
 EXAMPLE.264.800386585
 SYSAUX.257.800386397
 SYSTEM.256.800386395
 UNDOTBS1.258.800386397
 UNDOTBS2.265.800386713
 USERS.259.800386397
 aaa
 ASMCMD> ls -a             --查看别名信息,该信息来自v$asm_alias
+DATA/CZMMIAO/DATAFILE/aaa => EXAMPLE.264.800386585
 none => SYSAUX.257.800386397
 none => SYSTEM.256.800386395
 none => UNDOTBS1.258.800386397
 none => UNDOTBS2.265.800386713
 none => USERS.259.800386397
 aaa
 ASMCMD> rmalias aaa         --删除对象别名
ASMCMD> ls -a
 none => EXAMPLE.264.800386585
 none => SYSAUX.257.800386397
 none => SYSTEM.256.800386395
 none => UNDOTBS1.258.800386397
 none => UNDOTBS2.265.800386713
 none => USERS.259.800386397 
ASMCMD> lsdg             --查看磁盘组信息
State    Type    Rebal  Unbal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
 MOUNTED  EXTERN  N      N         512   4096  1048576      3815     2529                0            2529              0  DATA/
 ASMCMD> lsct              --查看asm客户端信息
 DB_Name   Status        Software_Version  Compatible_version  Instance_Name
 czmmiao   CONNECTED           10.2.0.1.0          10.2.0.1.0  czmmiao1
ASMCMD> mkdir bbb ccc -- 创建bbb和ccc目录
ASMCMD> ls
 EXAMPLE.264.800386585
 SYSAUX.257.800386397
 SYSTEM.256.800386395
 UNDOTBS1.258.800386397
 UNDOTBS2.265.800386713
 USERS.259.800386397
 bbb/
 ccc/
 ASMCMD> rmdir bbb ccc      --删除bbb和ccc目录,rm命令有-r和-f两个参数,用法同linux的rm命令
11g R2新增命令
cp:不仅可以在ASM和OS之间复制文件,也可以在不同的ASM Instance和Diskgroup之间复制文件;
cp +dgtest/test/datafile/USERS.264.646186565 users.dbf 
 md_backup: 将disk group中的metadata备份到文件; 
md_backup /tmp/backupfile -G DATAGP 
 md_restore: 将备份文件中的metadata恢复到disk group; 
 md_restore -full -G data --silent /tmp/file 
 lsattr: 列出disk group的属性;
lsattr -l -G DATAGP 
 setattr: 设置disk group的属性;
 setattr -G DATAGP compataible.asm 11.2.0.0.0 
 lsof: 显示local clients的open files;
 lsof -G DATAGP 
 chdg: 修改disk group, add或drop disk;
 chdg DATAGP_config.xml 
 chkdg: check 或 repair disk group 的metadata;
 chkdg --repair DATAGP 
 dropdg: drop disk group; 
dropdg -r -f DATAGP 
 iostat: 查看I/O statics通过v$asm_disk_iostat;
 iostat -G DATAGP 
 lsdsk: list ASM disks;
 lsdsk -p -G DATAGP /dev/raw/* ; 
 lsdsk --candidate -p 
 lsod: list open ASM disks; 
lsod -G DATAGP 
 mkdg: create disk group based on a xml file; 
mkdg DATAGP_config.xml 
 mount: mount a disk group;
 mount -f DATAGP;
 mount --restrict DATAGP; 
 mount -a 
 offline: offline disks or failure groups that belong to disk group.
 offline -G DATAGP -F FG1 
 online: online disks or a failure group; 
online -G DATAGP -D data_0001 --power=3 
 rebal: rebalance a disk group;
 rebal --power 4 DATAGP 
 remap: mark blocks as unusable on the disk and relocates data; 
remap DATAGP data_0001 500-700 
 umount: dismount a disk group;
 unmount -f DATAGP 
 pwcopy: copy password file;
 pwcopy --asm +DG/mydir/mypwfile +DG1/mypwfile 
 pwcreate: create password file for sys; 
pwcreate --asm +DG/mdir/mypwfile 'welcome' 
 pwdelete: delete password file;
 pwdelete --asm +DG/mydir/mypwfile 
 pwget: get the location of password file; 
pwget --asm 
 pwmove: move password file; 
pwmove --asm +DG/mydir/mypwfile +DG1/mypwfile 
 pwset: set the location of password file; 
pwset -dbuniquename aime1 +DG/mydir/mypwfile 
 dsget: get the discovery disk string; 
 dsget 
 dsset: set the discovery disk string;
dsset /dev/raw/* 
 lsop: list current operations on disk group from v$asm_operation; 
lsop 
 shutdown: shutdown ASM instance; 
shut immediate 
 spbackup: backup ASM Spfile; 
spbackup +DATA/asm/asmprameterfile/register.323.234 +DATA/spf.bak 
 spcopy: copy spfile; 
spcopy +DATA/asm/asmprameterfile/register.323.234 +DATA/spf.ora 
 spget: get the spfile location; 
spget 
 spmove: move spfile; 
spmove +DATA/spf.ora +DATA1/spf.ora 
 spset: set the location of spfile; 
spset +DATA/spf.ora 
 startup: start up ASM instance;
 startup --nomount --pfile asm.ora 
 chtmpl:改变template的属性;
chtmpl -G DATAGP --redundancy high --striping fine mytemplate 
 lstmpl: list templates; 
ls -l -G DATAGP 
 mktmpl: add template to disk group; 
mktmpl -G DATA --redundancy mirror --striping coarse 
 rmtmpl: remove template from disk group;
 rmtmpl -G DATAGP mytp 
 chgrp: change user group of files;  
chgrp asm-data +data/mydir/a.f 
 chmod: change permissions of files;
 chmod 640 a.f 
 chown: change owner of files; 
chown user:usergroup a.f 
 groups: list all user groups of a user; 
groups DATAGP user 
 grpmod: add or remove OS users to ASM user group;
 grpmod --add fra asm_fra oracle1 oracle2 
 lsgrp: list all ASM user groups; 
lsgrp -a 
 lspwusr: list users from ASM password file;
 lspwusr 
 lsusr: list users in a disk group; 
lsusr -G DATAGP 
 mkgrp: create new ASM user group; 
mkgrp DATAGP asm_data oracle1 oracle2 
 mkusr: add OS user to a disk group; 
mkusr DATA oracle1 
 orapwusr: add, drop, modify ASM password file user;  
orapwusr --add --privilege sysdba hrusr 
 passwd: change password of a user; 
 passwd oracle2
 rmgrp: remove a user group from disk group; 
rmgrp DATAGP asm_data 
 rmusr: remove a OS user from disk group; 
rmusr DATAGP oracle2 
 rpusr: replace OS user1 with OS user2; 
rpusr DATAGP oracle1 oracle2 
 volcreate: create an ADVM volume in disk group; 
volcreate -G DATA -s 10G --width 64K --column 8 volume1 
 voldelete: delete an ADVM volume; 
voldelete -G DATAGP volume1 
 voldisable: disable an ADVM volumes in mounted disk groups and remove the volume device on the local node; 
 voldisable -G DATAGP volume1 
 volenable: enable ADVM volume in mounted disk groups; 
volenable -G DATAGP volume1 
 volinfo: display information of ADVM volumes; 
volinfo -G DATAGP volume1 
 volresize: resize an ADVM volume; 
volresize -G DATAGP -s 20G volume1 
 volset: set attributes of ADVM volume; 
volset -G DATA --usagestring 'no file system attached'  volume1 
 volstat: report I/O statistics of ADVM volume; 
volstat -G DATAGP 
参考至:http://www.ningoo.net/html/2008/oracle11g_asmcmd_new_command.html
                http://www.dba-oracle.com/t_asmcmd.htm                 http://www.reachdba.com/showthread.php?386-asmcmd-Usage-with-Examples
                 http://www.isnetne.ch/lbd/SGBD/oracle/documents/ASM/ASMCMD%20Quick%20Reference%20Guide.pdf
                 http://blog.chinaunix.net/uid-23622436-id-3196692.html       
本文原创,转载请注明出处、作者
 如有错误,欢迎指正  










