使用 ASMCMD 工具管理ASM目錄及檔案

beatony發表於2011-07-29

使用 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例項的管理。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22578826/viewspace-703426/,如需轉載,請註明出處,否則將追究法律責任。

相關文章