asmcmdとは
asmcmdとは10.2以降に追加されたASMの管理用コマンドです。10.1のバージョンにおいてはASMのディスクグループ情報やファイルの一覧等を取得するためにはsqlplus等からASMインスタンスに接続し、 sqlで情報を取得する必要がありましたがasmcmdを使用することでosコマンドライクな記述でASMの処理を行うことができます。asmcmdのバージョンによる違い
asmcmdは10.2に追加された機能ですが10.2のバージョンではasm上のファイルのコピーやディスクグループの追加や削除といったオペレーションには対応していませんでした。 11.1ではファイルのコピーやディスク情報の表示、11.2においてはディスクグループの追加や削除、asmインスタンスの起動や停止等ほとんどのオペレーションに対応する等、バージョンが上がるにつれ機能が拡張されてきています。特にcpコマンドはASMからファイルシステム上へファイルをコピーする機能を持っており、cpコマンド以外で同じ作業をするためにはrmanを使う必要が出てくるため重宝します。
asmcmdの使用方法
asmcmdは内部ではASMインスタンスに接続して処理しているためほとんどのオペレーションを実行するにはASMインスタンスが起動している必要があります。 asmcmd実行時に接続するASMインスタンスの設定は環境変数ORACLE_HOME及びORACLE_SIDが参照されるためこれらの環境変数を設定した上で$ORACLE_HOME/bin/asmcmdを実行するとasmcmdが使用できます。対話モードと非対話モード
以下は対話モードでasmcmdが起動する例です。 -pはプロンプトにカレントディレクトリを表示するオプションです。
[ora111@localhost bin]$ export ORACLE_SID=+ASM [ora111@localhost bin]$ export ORACLE_HOME=/app/oracle/product/11.1.0/db_1 [ora111@localhost bin]$ asmcmd -p ASMCMD [+]>引数にコマンド名を渡すことで非対話モードで起動します。
[ora111@localhost bin]$ asmcmd ls -l +DG1/ORCL111 Type Redund Striped Time Sys Name Y CONTROLFILE/ Y DATAFILE/ Y ONLINELOG/ Y PARAMETERFILE/ Y TEMPFILE/ N spfileORCL111.ora => +DG1/ORCL111/PARAMETERFILE/spfile.265.749180179 [ora111@localhost bin]$
asmcmdのコマンド
10.2~に使用可能なコマンド・cd(カレントディレクトリの移動)
ASMCMD> cd +DG1/ORCL111 ASMCMD> pwd +DG1/ORCL111・find(ファイルの検索)
find <検索ディレクトリ> <ファイル名>
ASMCMD> find +DG1 USERS* +DG1/ORCL111/DATAFILE/USERS.264.749179607以下はすべてのディスクグループの全ファイルをリストします
ASMCMD> find * * +DG1/ORCL111/ +DG1/ORCL111/CONTROLFILE/ +DG1/ORCL111/CONTROLFILE/Current.256.749179559 +DG1/ORCL111/DATAFILE/ +DG1/ORCL111/DATAFILE/SYSAUX.261.749179585 +DG1/ORCL111/DATAFILE/SYSTEM.260.749179573 +DG1/ORCL111/DATAFILE/UNDOTBS1.262.749179591 +DG1/ORCL111/DATAFILE/USERS.264.749179607 +DG1/ORCL111/ONLINELOG/ +DG1/ORCL111/ONLINELOG/group_1.257.749179559 +DG1/ORCL111/ONLINELOG/group_2.258.749179563 +DG1/ORCL111/ONLINELOG/group_3.259.749179569 +DG1/ORCL111/PARAMETERFILE/ +DG1/ORCL111/PARAMETERFILE/spfile.265.749180179 +DG1/ORCL111/TEMPFILE/ +DG1/ORCL111/TEMPFILE/TEMP.263.749179599 +DG1/ORCL111/spfileORCL111.ora・du(ファイルの使用量の表示)
ASMCMD> du Used_MB Mirror_used_MB 1054 2114・ls(ファイルリストの表示)
ASMCMD> ls -l Type Redund Striped Time Sys Name Y CONTROLFILE/ Y DATAFILE/ Y ONLINELOG/ Y PARAMETERFILE/ Y TEMPFILE/ N spfileORCL111.ora => +DG1/ORCL111/PARAMETERFILE/spfile.265.749180179・rm(ファイルの削除)
ASMCMD> rm spfile.265.749180179.bk・lsct(ディスクグループをマウントしているクライアント情報の表示)
ASMCMD> lsct DB_Name Status Software_Version Compatible_version Instance_Name Disk_Group ORCL111 CONNECTED 11.1.0.6.0 11.1.0.0.0 ORCL111 DG1・lsdg(ディスクグループ情報の表示)
ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Name MOUNTED NORMAL N 512 4096 1048576 3997 1801 0 900 0 DG1/11.1~に使用可能なコマンド
・cpコマンド(ファイルのコピー)
cpコマンドはASM⇔ファイルシステム間、asm⇔asm間のファイルコピーが可能です。
ASMCMD [+DG1/ORCL111/CONTROLFILE] > cp +DG1/ORCL111/CONTROLFILE/Current.256.749179559 /var/tmp/Current.256.749179559 source +DG1/ORCL111/CONTROLFILE/Current.256.749179559 target /var/tmp/Current.256.749179559 copying file(s)... file, /var/tmp/Current.256.749179559, copy committed.・lsdsk(ディスクグループを構成するディスクの情報)
例1 ディスクパスのみ
ASMCMD> lsdsk Path /dev/raw/raw1 /dev/raw/raw2例2 ディスク使用量表示
ASMCMD> lsdsk -k Total_MB Free_MB OS_MB Name Failgroup Library Label UDID Product Redund Path 2047 949 2047 RAW1 FAIL1 System UNKNOWN /dev/raw/raw1 1950 852 2047 RAW2 FAIL2 System UNKNOWN /dev/raw/raw2例3 統計表示
ASMCMD> lsdsk -s Reads Write Read_Errs Write_Errs Read_time Write_Time Bytes_Read Bytes_Written Path 12031 89313 0 0 91.21589 1291.853295 223900160 /dev/raw/raw1 9280 89313 0 0 82.889608 1289.858427 180162560 /dev/raw/raw2例4 時刻表示
ASMCMD> lsdsk -t Create_Date Mount_Date Repair_Timer Path 11-04-23 11-04-23 0 /dev/raw/raw1 11-04-23 11-04-23 0 /dev/raw/raw2例5 グループ番号、ディスク番号等を表示
ASMCMD> lsdsk -p Group_Num Disk_Num Incarn Mount_Stat Header_Stat Mode_Stat State Path 1 0 3916084479 CACHED MEMBER ONLINE NORMAL /dev/raw/raw1 1 1 3916084478 CACHED MEMBER ONLINE NORMAL /dev/raw/raw2・md_backup(ディスクグループのメタデータのバックアップ)
ASMCMD> md_backup Disk group to be backed up: DG1・md_restore(ディスクグループのメタデータバックアップのリストア)
11.2~に使用可能なコマンド
・dsget/dsset(ディスク検出文字列の表示、変更)
・mount/umount(ディスクグループのマウント、アンマウント)
・startup/shutdown(ASMインスタンスの起動、停止)
・lsop(ASMオペレーション(リバランス等)の表示)
マニュアル
ユーティリティ10g リリース2(10.2)ストレージ管理者ガイド11gリリース1(11.1)
Oracle Automatic Storage Management管理者ガイド11gリリース2(11.2)