使用 ASMCMD 工具管理ASM目錄及檔案
--==============================
-- 使用ASMCMD 工具管理ASM目錄及檔案
--==============================
在ASM例項中,所有的儲存於ASM磁碟組中的檔案對於作業系統命令而言是不可訪問的,因此也無法使用常規的命令來操縱ASM磁碟中的文
件。所幸的是,我們有ASMCMD工具來代替作業系統命令來完成這部分工作。ASMCMD工具提供了類似於作業系統的常用命令,如ls , du ,find
,cd ,rm ,mkdir等等。藉助這些工具可以更輕鬆的完成ASM例項的相關管理工作。
有關ASM的相關參考:
1.ASMCMD檔案所在的位置
[[email protected]
[[email protected] ~]$ which asmcmd
/u01/oracle/10g/bin/asmcmd
2.啟動ASMCMD
[[email protected] ~]$ export ORACLE_SID=+ASM--啟動前要設定ORACLE_SID環境變數
[[email protected] ~]$ 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.具體用法
[[email protected] ~]$ asmcmd -p ls -l--無需進入到ASMCMD命令提示符下完成相應的功能
StateTypeRebalUnbalName
MOUNTEDNORMALNNDG1/
MOUNTEDNORMALNNDG2/
MOUNTEDEXTERNNNREV/
ASMCMD> ls -l--檢視磁碟組的基本資訊
StateTypeRebalUnbalName
MOUNTEDNORMALNNDG1/
MOUNTEDNORMALNNDG2/
MOUNTEDEXTERNNNREV/
ASMCMD> ls -s--檢視磁碟組的詳細資訊,如磁碟大小,可用空間,扇區大小等
SectorBlockAUTotal_MBFree_MBReq_mir_free_MBUsable_file_MBOffline_disksName
512409610485763058149807490DG1/
51240961048576200980490DG2/
5124096104857630742949029490REV/
ASMCMD> du--檢視當前目錄磁碟已使用的容量
Used_MBMirror_used_MB
8041541
ASMCMD> pwd--顯示當前路徑
+
ASMCMD> cd +DG1
ASMCMD> pwd
+DG1
ASMCMD> du
Used_MBMirror_used_MB
7321469
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
TypeRedundStripedTimeSysName
YCONTROLFILE/
YDATAFILE/
YONLINELOG/
YPARAMETERFILE/
YTEMPFILE/
Nspfileasmdb.ora => +DG1/ASMDB/PARAMETERFILE/spfile.264.734886407
ASMCMD> ls -l +DG1/asmdb/spfi*
TypeRedundStripedTimeSysName
Nspfileasmdb.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
StateTypeRebalUnbalSectorBlockAUTotal_MBFree_MBReq_mir_free_MBUsable_file_MBOffline_disksName
MOUNTEDNORMALNN512409610485763058149807490DG1/
MOUNTEDNORMALNN51240961048576200980490DG2/
MOUNTEDEXTERNNN5124096104857630742949029490REV/
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工具給我們提供了很多方便,這些操作命令基本上與Liunx,Unix命令相似,通過這些操作命令可以大大簡化對
ASM例項的管理。
5.更多參考
有關閃回特性請參考
有關基於使用者管理的備份和備份恢復的概念請參考:
有關RMAN的恢復與管理請參考:
有關Oracle體系結構請參考: