使用 ASMCMD 工具管理ASM目录及文件

--==============================

-- 使用ASMCMD 工具管理ASM目录及文件

--==============================

 

    ASM实例中,所有的存储于ASM磁盘组中的文件对于操作系统命令而言是不可访问的,因此也无法使用常规的命令来操纵ASM磁盘中的文

件。所幸的是,我们有ASMCMD工具来代替操作系统命令来完成这部分工作。ASMCMD工具提供了类似于操作系统的常用命令,如ls , du ,find

,cd ,rm ,mkdir等等。借助这些工具可以更轻松的完成ASM实例的相关管理工作。

    有关ASM的相关参考:

       创建ASM实例及ASM数据库

        ASM 磁盘、目录的管理

 

1.ASMCMD文件所在的位置

    [root@oradb ~]# su - oracle

    [oracle@oradb ~]$ which asmcmd

    /u01/oracle/10g/bin/asmcmd

 

2.启动ASMCMD

    [oracle@oradb ~]$ export ORACLE_SID=+ASM    --启动前要设定ORACLE_SID环境变量

    [oracle@oradb ~]$ asmcmd

    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.

                                      --asmcmd命令提示符下,输入help [命令] ,则显示该命令帮助信息

           commands:

           --------

           cd

           du

           find

           help

           ls

           lsct

           lsdg

           mkalias

           mkdir

           pwd

           rm

           rmalias

 

3.具体用法     

    [oracle@oradb ~]$ 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> du                            --查看当前目录磁盘已使用的容量

    Used_MB      Mirror_used_MB

       804                1541

      

    ASMCMD> pwd                           --显示当前路径

    +

    ASMCMD> cd +DG1

    ASMCMD> pwd

    +DG1

    ASMCMD> du

    Used_MB      Mirror_used_MB

       732                1469  

      

    ASMCMD> find -t datafile +DG1/asmdb sys*    --find 用于查找对象

    +DG1/asmdb/DATAFILE/SYSAUX.261.734885459

    +DG1/asmdb/DATAFILE/SYSTEM.259.734885389

 

    ASMCMD> ls -l +DG1/asmdb

    Type           Redund  Striped  Time             Sys  Name

                                               Y    CONTROLFILE/

                                               Y    DATAFILE/

                                               Y    ONLINELOG/

                                               Y    PARAMETERFILE/

                                               Y    TEMPFILE/

                                               N    spfileasmdb.ora => +DG1/ASMDB/PARAMETERFILE/spfile.264.734886407

 

    ASMCMD> ls -l +DG1/asmdb/spfi*

    Type           Redund  Striped  Time             Sys  Name

                                               N    spfileasmdb.ora => +DG1/ASMDB/PARAMETERFILE/spfile.264.734886407

 

    ASMCMD> pwd

    +DG1

   

    ASMCMD> cd asmdb        --cd 命令改变当前目录

    ASMCMD> pwd

    +DG1/asmdb

   

    ASMCMD> ls

    CONTROLFILE/

    DATAFILE/

    ONLINELOG/

    PARAMETERFILE/

    TEMPFILE/

    spfileasmdb.ora

 

    ASMCMD> lsdg

    State    Type    Rebal  Unbal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name

    MOUNTED  NORMAL  N      N         512   4096  1048576      3058     1498                0             749             0  DG1/

    MOUNTED  NORMAL  N      N         512   4096  1048576       200       98                0              49              0  DG2/

    MOUNTED  EXTERN  N      N         512   4096  1048576      3074     2949                0            2949             0  REV/

 

    ASMCMD> mkdir +DG2/asmdb/bakfile       --mkdir 创建目录

    ASMCMD> ls -l +DG2/asmdb/bakfile

    ASMCMD> rm +DG2/asmdb/bakfile          --rm 删除目录

    ASMCMD> ls -l +DG2/asmdb/bakfile

    asmcmd: entry 'bakfile' does not exist in directory '+DG2/asmdb/'                          

 

    ASMCMD> exit                               --退出asmcmd命令行

 

4.从上面的描述可以看出ASMCMD工具给我们提供了很多方便,这些操作命令基本上与LiunxUnix命令相似,通过这些操作命令可以大大简化对

    ASM实例的管理。

 

5.更多参考

有关闪回特性请参考

        Oracle 闪回特性(FLASHBACK DATABASE)

Oracle 闪回特性(FLASHBACK DROP & RECYCLEBIN)

Oracle 闪回特性(Flashback Query、Flashback Table)

Oracle 闪回特性(Flashback Version、Flashback Transaction)

 

有关基于用户管理的备份和备份恢复的概念请参考:

        Oracle 冷备份

        Oracle 热备份

        Oracle 备份恢复概念

        Oracle 实例恢复

        Oracle 基于用户管理恢复的处理(详细描述了介质恢复及其处理)

       

    有关RMAN的恢复与管理请参考:

        RMAN 概述及其体系结构

        RMAN 配置、监控与管理

        RMAN 备份详解

        RMAN 还原与恢复

       

    有关Oracle体系结构请参考:

        Oracle 实例和Oracle数据库(Oracle体系结构)

        Oracle 表空间与数据文件

        Oracle 密码文件

        Oracle 数文件

Oracle 数据库实例启动关闭过程

        Oracle 联机重做日志文件(ONLINE LOG FILE)

        Oracle 控制文件(CONTROLFILE)

        Oracle 归档日志

posted @ 2011-01-13 11:37  生活不是用来挥霍的  阅读(1484)  评论(0编辑  收藏  举报