5 ASMCMDによるOracle ADVMの管理
Oracle ASMコマンドライン・ユーティリティ(ASMCMD)は、Oracle ADVMボリュームを管理するコマンドを提供します。
ASMCMDユーティリティは、対話モードでも非対話モードでも実行できます。
この章では、Oracle Automatic Storage Management (Oracle ASM) コマンドライン・ユーティリティ(ASMCMD)のボリューム管理コマンドについて説明します。
関連項目:
-
Oracle ASM動的ボリューム・マネージャ(Oracle ADVM)の詳細は、「Oracle ASM動的ボリューム・マネージャの概要」
-
ボリュームを管理するための
ALTER
DISKGROUP
ADD
VOLUME
SQL文の詳細は、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