5 ASMCMDによるOracle ADVMの管理
Oracle ASMコマンドライン・ユーティリティ(ASMCMD)は、Oracle ADVMボリュームを管理するコマンドを提供します。
ASMCMDユーティリティは、対話モードでも非対話モードでも実行できます。
この章では、Oracle Automatic Storage Management (Oracle ASM) コマンドライン・ユーティリティ(ASMCMD)のボリューム管理コマンドについて説明します。
関連項目:
- 
                        
Oracle ASM動的ボリューム・マネージャ(Oracle ADVM)の詳細は、「Oracle ASM動的ボリューム・マネージャの概要」
 - 
                        
ボリュームを管理するための
ALTERDISKGROUPADDVOLUMESQL文の詳細は、Oracle Automatic Storage Management管理者ガイドを参照してください - 
                        
ASMCAコマンドライン・インタフェースの実行に関する一般的な情報は、Oracle Automatic Storage Management管理者ガイドを参照してください
 
ASMCMDボリューム管理コマンド
このトピックでは、Oracle ADVMボリューム管理コマンドの概要を示します。
表5-1に、Oracle ADVMボリューム管理コマンドと簡単な説明を示します。これらのコマンドを正常に実行するには、ローカルOracle ASMインスタンスが実行中で、コマンドに必要なディスク・グループがそのOracle ASMインスタンスに作成され、マウントされている必要があります。
表5-1 ASMCMDボリューム管理コマンドの概要
| コマンド | 説明 | 
|---|---|
| 
                                  指定されたディスク・グループにOracle ADVMボリュームを作成します。  | 
                           |
| 
                                  Oracle ADVMボリュームを削除します。  | 
                           |
| 
                                  マウントされているディスク・グループ内のOracle ADVMボリュームを無効にします。  | 
                           |
| 
                                  マウントされているディスク・グループ内のOracle ADVMボリュームを有効にします。  | 
                           |
| 
                                  Oracle ADVMボリュームに関する情報を表示します。  | 
                           |
| 
                                  Oracle ADVMボリュームのサイズを変更します。  | 
                           |
| 
                                  マウントされているディスク・グループ内のOracle ADVMボリュームの属性を設定します。  | 
                           |
| 
                                  ボリュームI/O統計をレポートします。  | 
                           
volcreate
目的
指定されたディスク・グループにOracle ADVMボリュームを作成します。
構文および説明
volcreate -G diskgroup -s size [ --column number ] [ --width stripe_width ] [--redundancy {high|mirror|unprotected}] volume
表5-2に、volcreateコマンドのオプションを示します。
                        
表5-2 volcreateコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     
  | 
                              
| 
                                     
  | 
                                 
                                     ストライプ・セット内の列数。値の範囲は  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームのストライプ幅(単位は  | 
                              
| 
                                     
  | 
                                 
                                     標準冗長性のディスク・グループにのみ指定可能なOracle ADVMボリュームの冗長性。冗長性が指定されていない場合、設定はデフォルトでディスク・グループの冗長性レベルになります(推奨設定です)。値の範囲は、非ミラー化冗長性の場合は  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。英数字とアンダースコアのみ使用できます。ハイフンは使用できません。最初の文字は、英字にする必要があります。  | 
                              
警告:
--redundancy unprotectedの指定は、Oracle ASMのミラー化がOracle ADVMボリュームによるデータ・リカバリに対して使用不可であることを意味します。ディスク・グループの冗長性の設定(normal)では、保護されていないOracle ADVMボリュームのミラー化は提供されません。unprotected構成は、断続的なストレージ・アクセス障害によりデータ損失が発生する可能性があるため、本番環境では推奨されません。バックアップを強くお薦めします。
                           
Oracle ADVMボリュームの作成時に、ボリューム・デバイス名は、一意のOracle ADVM永続ディスク・グループ番号をボリューム名の最後に連結して作成します。一意の番号の桁数は1から3です。
Linuxでは、ボリューム・デバイス名の書式はvolume_name-nnnです(volume1-123など)。 
                        
Linuxプラットフォームでは、ボリューム名は11文字以下の英数字とし、先頭の文字はアルファベットにする必要があります。Solarisプラットフォームでは、ボリューム名は30文字以下の英数字とし、先頭の文字をアルファベットにする必要があります。
ボリューム・デバイス名は、volinfoコマンドを使用して特定できます。 
                        
--columnオプションが1に設定される場合、ストライピングは無効になり、ストライピング幅はボリュームのデフォルト・エクステント・サイズ(64 MB)と同じになります。データベース・データファイルおよびその他のファイルを使用して最適なパフォーマンスを実現するには、--columnオプションを8(デフォルト)に設定することをお薦めします。
                        
ボリュームが正常に作成されると、ボリューム・デバイスは自動的に有効になります。
ボリューム・デバイス・ファイルは、他のディスクまたは論理ボリュームとして、ファイル・システムをマウントするために、またはアプリケーションで直接使用するために機能します。
アクセラレータ・ボリュームを作成する場合、プライマリ・ボリュームのストレージよりも大幅に高速なストレージを使用してディスク・グループにボリュームを作成します。
例
次に、volcreateコマンドの例を示します。この例では、サイズを10GBに設定してdataディスク・グループにvolume1を作成します。
                        
例5-1 ASMCMD volcreateコマンドの使用方法
ASMCMD [+] >  volcreate -G data -s 10G --width 1M --column 8 volume1
ASMCMD [+] > volinfo -G data volume1
Diskgroup Name: DATA
 
         Volume Name: VOLUME1
         Volume Device: /dev/asm/volume1-123
         State: ENABLED
         Size (MB): 10240
         Resize Unit (MB): 64
         Redundancy: MIRROR
         Stripe Columns: 8
         Stripe Width (K): 1024
         Usage: 
         Mountpath: 関連項目:
- 
                                 
ボリューム・デバイス・ファイルのマウントの詳細は、「Oracle ACFSファイル・システムの作成」
 - 
                                 
volinfoコマンドの詳細は、「volinfo」 - 
                                 
Oracle ADVMの制限事項の詳細は、「Oracle ADVMの制限事項」
 - 
                                 
アクセラレータ・ボリュームの詳細は、「mkfs」
 - 
                                 
ミラー化、冗長性および障害グループの詳細は、Oracle Automatic Storage Management管理者ガイドを参照してください
 
voldelete
目的
Oracle ADVMボリュームを削除します。
構文および説明
voldelete -G diskgroup volume
表5-3に、voldeleteコマンドのオプションを示します。
                        
表5-3 voldeleteコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
このコマンドを正常に実行するには、ローカルOracle ASMインスタンスが実行中で、このコマンドに必要なディスク・グループがそのOracle ASMインスタンスにマウントされている必要があります。ボリュームを削除する前に、ボリュームに関連付けられたアクティブなファイル・システムがないことを確認する必要があります。
例
次に、voldeleteコマンドの例を示します。この例では、dataディスク・グループからvolume1を削除します。
                        
例5-2 ASMCMD voldeleteコマンドの使用方法
ASMCMD [+] > voldelete -G data volume1
voldisable
目的
マウントされているディスク・グループ内のOracle ADVMボリュームを無効にし、ローカル・ノードのボリューム・デバイスを削除します。
構文および説明
voldisable { --all |{ -G diskgroup { -a | volume } } }表5-4に、voldisableコマンドのオプションを示します。
                        
表5-4 voldisableコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                        
  | 
                                    
                                        すべてのディスク・グループ内のすべてのボリュームを指定します。  | 
                                 
| 
                                        
  | 
                                    
                                        ボリュームを含むディスク・グループの名前。  | 
                                 
| 
                                        
  | 
                                    
                                        指定したディスク・グループ内のすべてのボリュームを指定します。  | 
                                 
| 
                                        
  | 
                                    
                                        ボリュームの名前。  | 
                                 
Oracle ASMインスタンスの停止またはディスク・グループのディスマウントの前にボリュームを無効にして、オープン・ボリューム・ファイルのためにforceオプションを指定しなくても正常に操作できることを確認します。また、ボリュームを無効にすると、そのボリュームは存在しなくなるため、それ以降にボリュームまたはデバイス・ファイルはオープンできなくなります。
ボリュームを無効にする前に、ボリュームに関連付けられたアクティブなファイル・システムがないことを確認する必要があります。先に、Oracle ACFSファイル・システムをディスマウントしてから、ボリュームを無効にします。「ボリュームおよびOracle ACFSファイル・システムの登録解除、ディスマウント、無効化」を参照してください。
ボリュームは、先にボリュームを無効にしなくても削除できます。
例
次に、voldisableコマンドの例を示します。この例では、dataディスク・グループのvolume1を無効にします。
                        
例5-3 ASMCMD voldisableコマンドの使用方法
ASMCMD [+] > voldisable -G data volume1
volenable
目的
マウントされているディスク・グループ内のOracle ADVMボリュームを有効にします。
構文および説明
volenable {  --all |{ -G diskgroup { -a | volume } } }表5-5に、volenableコマンドのオプションを示します。 
                        
表5-5 volenableコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     すべてのディスク・グループ内のすべてのボリュームを指定します。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     指定したディスク・グループ内のすべてのボリュームを指定します。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
ボリュームは作成時に有効になります。
例
次に、volenableコマンドの例を示します。この例では、dataディスク・グループのvolume1を有効にします。
                        
例5-4 ASMCMD volenableコマンドの使用方法
ASMCMD [+] > volenable -G data volume1
volinfo
目的
Oracle ADVMボリュームに関する情報を表示します。
構文および説明
volinfo {  --all |{ -G diskgroup { -a | volume } } }
volinfo {--show_diskgroup |--show_volume}  volumedevice表5-6に、volinfoコマンドのオプションを示します。
                        
表5-6 volinfoコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     すべてのディスク・グループ内のすべてのボリュームを指定します。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     指定したディスク・グループ内のすべてのボリュームを指定します。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
| 
                                     
  | 
                                 
                                     ディスク・グループ名のみを戻します。ボリューム・デバイス名が必要です。  | 
                              
| 
                                     
  | 
                                 
                                     ボリューム名のみを戻します。ボリューム・デバイス名が必要です。  | 
                              
| 
                                     
  | 
                                 
                                     ボリューム・デバイスの名前。  | 
                              
例
1つ目の例では、dataディスク・グループのvolume1ボリュームに関する情報を表示します。これはLinux環境で生成された例です。 
                        
Mountpathフィールドには、ボリュームが現在マウントされているパスまたはボリュームが最後にマウントされたパスが含まれます。
                        
例5-5 ASMCMD volinfoコマンドの使用方法
ASMCMD [+] > volinfo -G data volume1
Diskgroup Name: DATA
         Volume Name: VOLUME1
         Volume Device: /dev/asm/volume1-123
         State: ENABLED
         Size (MB): 10240
         Resize Unit (MB): 64
         Redundancy: MIRROR
         Stripe Columns: 8
         Stripe Width (K): 1024
         Usage: ACFS
         Mountpath: /acfsmounts/acfs1
volresize
目的
Oracle ADVMボリュームのサイズを変更します。
構文および説明
volresize -G diskgroup -s size [ -f ] volume
表5-7に、volresizeコマンドのオプションを示します。
                        
表5-7 volresizeコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     Oracle ACFSボリューム以外のボリュームの圧縮を強制し、警告メッセージを非表示にします。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの新しいサイズ。単位は  | 
                              
ボリュームが非Oracle ACFSファイル・システムにマウントされている場合、サイズの変更の前にファイル・システムをディスマウントします。新しいサイズが現在より小さい場合、データ破損の可能性が警告されます。-f(強制)オプションを指定しないかぎり、操作を続行するか確認を求められます。 
                        
Oracle ACFSファイル・システムがボリューム上に存在する場合、volresizeコマンドではボリュームのサイズを変更できません。acfsutil sizeコマンドを使用する必要があります。このコマンドではボリュームとファイル・システムのサイズも変更できます。詳細は、「acfsutil size」を参照してください。
                        
例
次に、volresizeコマンドの例を示します。この例では、dataディスク・グループのvolume1のサイズを20GBに変更します。
                        
例5-6 ASMCMD volresizeコマンドの使用方法
ASMCMD [+] > volresize -G data -s 20G volume1
volset
目的
マウントされているディスク・グループ内のOracle ADVMボリュームの属性を設定します。
構文および説明
volset -G diskgroup [ --usagestring string] [--mountpath mount_path ] volume
表5-8に、volsetコマンドのオプションを示します。
                        
表5-8 volsetコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     ボリュームを含むディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームにタグを付けるオプションの使用状況文字列(30文字まで)。この文字列は、ボリュームがOracle ACFSファイル・システムに接続されている場合は  | 
                              
| 
                                     
  | 
                                 
                                     マウント・パス文字列でボリュームにタグを付けるオプションの文字列(1024文字まで)。この文字列は、ファイル・システムがマウントされている場合に設定されます。この設定を変更しないでください。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
mkfsを実行してファイル・システムを作成しているときは、usageフィールドはACFSに設定され、mountpathフィールドは設定されていれば空白文字列にリセットされます。usageフィールドはACFSのままにしておく必要があります。
                        
mountコマンドを実行してファイル・システムをマウントしているときは、mountpathフィールドはファイル・システムのマウント・ポイントを識別するマウント・パス値に設定されます。この値がmountコマンドにより設定されると、mountpathフィールドは更新できません。
                        
例
次に、volsetコマンドの例を示します。この例では、ファイル・システムに関連付けられていないボリュームに対するusage文字列を設定します。
                        
例5-7 ASMCMD volsetコマンドの使用方法
ASMCMD [+] > volset -G data --usagestring 'no file system created' volume1
volstat
目的
Oracle ADVMボリュームに関するI/O統計をレポートします。
構文および説明
volstat [-G diskgroup] [volume]
表5-9に、volstatコマンドのオプションを示します。
                        
表5-9 volstatコマンドのオプション
| オプション | 説明 | 
|---|---|
| 
                                     
  | 
                                 
                                     ボリュームを含む、マウントされているディスク・グループの名前。  | 
                              
| 
                                     
  | 
                                 
                                     ボリュームの名前。  | 
                              
volstatコマンドを使用する際は、次のことが適用されます。
                        
- 
                              
ディスク・グループを指定せず、ボリューム名を指定すると、すべてのマウントされているディスク・グループで指定したボリューム名が検索されます。
 - 
                              
ディスク・グループ名を指定し、ボリューム名を省略すると、名前が付いたディスク・グループについて、すべてのボリュームが表示されます。
 - 
                              
ディスク・グループ名とボリューム名の両方を省略すると、すべてのディスク・グループ上のすべてのボリュームが表示されます。
 
例
次に、volstatコマンドの例を示します。この例では、dataディスク・グループ内のボリュームに関する情報を表示します。
                        
例5-8 ASMCMD volstatコマンドの使用方法
ASMCMD [+] > volstat -G data
DISKGROUP NUMBER / NAME:  1 / DATA
---------------------------------------
  VOLUME_NAME
     READS           BYTES_READ      READ_TIME       READ_ERRS 
     WRITES          BYTES_WRITTEN   WRITE_TIME      WRITE_ERRS
  -------------------------------------------------------------
  VOLUME1
     10085           2290573312      22923           0
     1382            5309440         1482            0