CREATE DISKGROUP
ノート:
このSQL文は、Oracle ASMを使用しており、Oracle ASMインスタンスを起動している場合にのみ有効です。この文の発行は、通常のデータベース・インスタンスからではなく、Oracle ASMインスタンスから行う必要があります。Oracle ASMインスタンスの起動の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
目的
CREATE
DISKGROUP
句を使用すると、ディスクのグループに名前を付け、そのグループをOracle Databaseが管理するように指定できます。Oracle Databaseは、ディスク・グループを論理単位として管理し、I/Oの均衡を保つために各ファイルを均等に分散します。また、Oracle Databaseでは、ディスク・グループで使用可能なすべてのディスクにデータベース・ファイルが自動的に分散され、記憶域構成が変わると常に、記憶域が自動的にリバランスされます。
この文を使用すると、ディスク・グループが作成され、1つ以上のディスクがディスク・グループに割り当てられ、ディスク・グループの初めてのマウントが実行されます。CREATE
DISKGROUP
は、ローカル・ノードのディスク・グループのみマウントします。後続のインスタンスで、Oracle ASMによって自動的にディスク・グループをマウントさせる場合は、初期化パラメータ・ファイルのASM_DISKGROUPS
初期化パラメータの値に、そのディスク・グループ名を追加する必要があります。SPFILE
を使用している場合、そのディスク・グループは自動的に初期化パラメータに追加されます。
関連項目:
-
ディスク・グループの変更については、「ALTER DISKGROUP」を参照してください。
-
Oracle ASMおよびディスク・グループを使用してデータベース管理を簡略化する方法については、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
-
初期化パラメータ・ファイルへのディスク・グループ名の追加の詳細は、「
ASM_DISKGROUPS
」を参照してください。 -
Oracle ASM操作を監視する方法については、「
V$ASM_OPERATION
」を参照してください。 -
ディスク・グループの削除については、「DROP DISKGROUP」を参照してください。
前提条件
この文を発行するには、SYSASM
システム権限が必要です。
この文を発行する前に、オペレーティング・システムのフォーマット・ユーティリティを使用して、ディスクをフォーマットしておく必要があります。また、Oracle Databaseユーザーが読取り/書込み権限を持ち、ASM_DISKSTRING
を使用してディスクが検出可能であることを確認します。
ファイル・システムではなく、Oracle ASMディスク・グループにデータベース・ファイルを格納している場合、Oracle ASMインスタンスを構成および起動してディスク・グループを管理しないと、データベース・インスタンスがディスク・グループのファイルにアクセスできません。
各データベース・インスタンスは、データベースと同じノード上にある1つのOracle ASMインスタンスと通信します。同じノード上にある複数のデータベース・インスタンスが、1つのOracle ASMインスタンスと通信できます。
構文
create_diskgroup::=
diskgroup_name
ディスク・グループ名を指定します。名前は、「データベース・オブジェクトのネーミング規則」に指定されている要件を満たしている必要があります。ただし、ディスク・グループはスキーマ・オブジェクトではありません。
ノート:
ディスク・グループ名には引用識別子を使用しないことをお薦めします。SQL*PlusでCREATE
DISKGROUP
文を発行する場合はこのような引用識別子は許可されていますが、ディスク・グループを管理する他のツールでは有効でない場合があります。
REDUNDANCY句
REDUNDANCY
句を使用すると、ディスク・グループの冗長レベルを指定できます。
-
NORMAL
REDUNDANCY
の場合、2つ以上の障害グループが存在する必要があります(次の「FAILGROUP
句」を参照)。Oracle ASMでは、ディスク・グループ・テンプレートで指定された属性に従って、ディスク・グループのすべてのファイルの冗長性が提供されます。NORMAL
REDUNDANCY
ディスク・グループでは、1つのグループが消失してもリカバリできます。ディスク・グループ・テンプレートの詳細は、「ALTER
DISKGROUP
」の「diskgroup_template_clauses」を参照してください。REDUNDANCY
句を指定しない場合、NORMAL
REDUNDANCY
がデフォルトになります。したがって、この句を指定しない場合、2つ以上の障害グループを作成する必要があります。それを作成しないと、作成操作は正常に実行されません。 -
HIGH
REDUNDANCY
の場合、少なくとも3つの障害グループが存在する必要があります。Oracle ASMでは、エクステントごとにミラー化された2つのコピーが存在する3方向ミラー化でミラーリングが行われます。HIGH
REDUNDANCY
ディスク・グループでは、2つの障害グループが消失してもリカバリできます。 -
FLEX
REDUNDANCY
ディスク・グループ・タイプを指定すると、ディスク・グループを作成した後、データベースによって独自の冗長性が指定されることが許可されます。ファイルを作成した後で、その冗長性を変更することもできます。このタイプのディスク・グループでは、Oracle ASMファイル・グループおよび割当て制限グループがサポートされます。フレックス・ディスク・グループには、3つ以上の障害グループが存在する必要があります。フレックス・ディスク・グループに含まれる障害グループの数が5個より少ない場合、1つが消失してもリカバリできます。それ以外の場合は、2つの障害グループが消失してもリカバリできます。フレックス・ディスク・グループを作成するには、COMPATIBLE
.ASM
およびCOMPATIBLE
.RDBMS
ディスク・グループ属性が12
.2
以上に設定されている必要があります。 -
EXTENDED
REDUNDANCY
は、拡張クラスタ環境で可用性が高いことに加えて、フレックス・ディスク・グループのすべての機能を持つディスク・グループです。クラスタには、物理的に食べられた複数のサイトにまたがるノートがあります。詳細は、「Oracle ASM拡張ディスク・グループについて」を参照してください。SITE
キーワードを使用すると、拡張ディスク・グループ内のファイルおよびファイル・グループの冗長性を、ディスク・グループごとではなく、サイトごとに指定できます。 -
EXTERNAL
REDUNDANCY
は、Oracle ASMでディスク・グループの冗長性が提供されないことを示します。ディスク・グループを構成する各ディスクで冗長性を確保する(たとえばストレージ・アレイを使用する)か、ディスク障害が発生した場合にはディスク・グループのデータ損失を想定しておく(テスト環境など)必要があります。EXTERNAL
REDUNDANCY
を指定する場合、FAILGROUP
句は指定できません。
作成したディスク・グループの冗長性レベルを後で変更することはできませんが、例外として、標準冗長性および高冗長性のディスク・グループをフレックス・ディスク・グループに変換できます。詳細は、「ALTER
DISKGROUP
」の「convert_redundancy_clause」を参照してください。
QUORUM | REGULAR
これらのキーワードを使用すると、障害グループまたはディスク指定を修飾できます。
-
REGULAR
ディスク、またはクォーラム以外の障害グループ内のディスクには、任意のファイルを含めることができます。 -
QUORUM
ディスクまたはクォーラム障害グループ内のディスクには、データベース・ファイル、Oracle Cluster Registry(OCR)または動的ボリュームを含めることはできません。ただし、QUORUM
ディスクにCluster Synchronization Services(CSS)の投票ファイルは含めることができます。Oracle ASMは可能な場合は常に、投票ファイル用に、クォーラム・ディスクまたはクォーラム障害グループ内のディスクを使用します。クォーラム障害グループは、ユーザー・データの格納に関する冗長性要件の決定時に考慮されません。
いずれのキーワードも指定しない場合、デフォルトでREGULAR
が使用されます。
障害グループを明示的に指定する場合は、キーワードFAILGROUP
の前にQUORUM
またはREGULAR
を指定します。暗黙的に作成した障害グループとともにディスク・グループを作成する場合は、キーワードDISK
の前にこれらのキーワードを指定します。
関連項目:
クォーラム・ディスクと標準ディスクおよび障害グループの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
FAILGROUP句
この句を使用すると、1つ以上の障害グループの名前を指定できます。NORMAL
またはHIGH
REDUNDANCY
を指定している場合にこの句を省略すると、Oracle Databaseは、自動的にディスク・グループの各ディスクを障害グループに追加します。障害グループの暗黙的な名前は、オペレーティング・システムに依存しないディスク名と同じです(「NAME句」を参照)。
EXTERNAL
REDUNDANCY
ディスク・グループを作成している場合、この句は指定できません。
qualified_disk_clause
DISK
qualified_disk_clause
を指定すると、ディスク・グループにディスクを追加できます。
search_string
ディスク・グループに追加するディスクごとに、オペレーティング・システム依存の検索文字列を指定します。Oracle ASMでは、この文字列を使用してディスクが検索されます。search_string
は、ASM_DISKSTRING
初期化パラメータの文字列を使用した検索で戻されるディスクのサブセットを指している必要があります。search_string
が、Oracle Databaseユーザーが読取り/書込み権限を持っているディスクを指していない場合、Oracle ASMはエラーを戻します。また、異なるディスク・グループに割り当てられている1つ以上のディスクを指している場合、FORCE
を指定していなければ、エラーが戻されます。
Oracle ASMでは、有効な追加候補のディスクごとにディスク・ヘッダーがフォーマットされ、このディスクが新規のディスク・グループのメンバーであることが示されます。
関連項目:
検索文字列の指定の詳細は、「
ASM_DISKSTRING
」初期化パラメータを参照してください。
NAME句
NAME
句は、search_string
が1つのディスクを指す場合にのみ有効です。この句を使用すると、オペレーティング・システムに依存しないディスクの名前を指定できます。名前の長さは最大30文字で、英数字のみを使用できます。最初の文字は、英字にする必要があります。ASMLIBでディスクにラベルを割り当てている場合にこの句を省略すると、ディスク名としてそのラベルが使用されます。ASMLIBでラベルを割り当てていない場合にこの句を省略すると、Oracle ASMは、「diskgroupname_####
」(####
はディスク番号)という書式のデフォルト名を作成します。この名前を使用して、後続のOracle ASM操作でディスクを参照できます。
SIZE句
この句を使用すると、ディスクのサイズをバイト単位で指定できます。ディスク容量を超えるサイズを指定すると、Oracle ASMはエラーを戻します。ディスク容量よりも小さいサイズを指定した場合、Oracle ASMで使用されるディスク領域が制限されます。サイズ値は、1つのディスク・グループ内のすべてのディスクで同一にする必要があります。この句を指定しない場合、Oracle ASMはプログラム的にディスクのサイズを決定します。
FORCE
FORCE
を指定すると、Oracle ASMで、別のディスク・グループのメンバーであるディスクをディスク・グループに追加できます。
ノート:
この方法でFORCE
を使用すると、既存のディスク・グループが破棄される可能性があります。
この句を有効にするには、ディスクはディスク・グループのメンバーである必要があり、ディスクがマウントされたディスク・グループの一部であってはなりません。
NOFORCE
NOFORCE
を指定すると、Oracle ASMで、ディスクが別のディスク・グループのメンバーである場合にエラーを戻すことができます。デフォルトはNOFORCE
です。
ATTRIBUTE句
この句を使用すると、ディスク・グループの属性値を設定できます。V$ASM_ATTRIBUTE
ビューを問い合せることによって、現在の属性値を確認できます。表13-2に、この句で設定できる属性を示します。属性値はすべて文字列です。
表13-2 ディスク・グループの属性
属性 | 有効な値 | 説明 |
---|---|---|
|
|
ディスク・グループでOracle ASMのファイル・アクセス制御を有効にするかどうかを指定します。
ファイル・アクセス制御を既存のディスク・グループに対して設定した場合、作成済のファイルはすべてのユーザーからアクセス可能なままになります。これを避けるには、 ノート: この属性は、Oracle ASMのファイル・アクセス制御を管理するために |
|
3桁の数(各桁は0(ゼロ)、2または6)。 |
Oracle ASMファイルの作成時に、そのファイルを所有するユーザー(最初の桁)、同じユーザー・グループ内のユーザー(2桁目)、およびそのユーザー・グループに属さない他のユーザー(3桁目)に対してマスクする権限を指定します。この属性は、ディスク・グループ内のすべてのファイルに適用されます。0(ゼロ)に設定すると、何もマスクされません。2に設定すると、書込み権限がマスクされます。6に設定すると、読取り権限と書込み権限の両方がマスクされます。デフォルト値は
ファイル・アクセス制御を既存のディスク・グループに対して設定した場合、作成済のファイルはすべてのユーザーからアクセス可能なままになります。これを避けるには、 ノート: この属性は、Oracle ASMのファイル・アクセス制御を管理するために |
|
サイズ(バイト単位)。有効な値は、1Mから64Mの2の累乗です。例: 4M、4194304。 |
割当て単位サイズを指定します。この属性は、ディスク・グループの作成時にのみ設定でき、 |
|
有効なOracle Databaseバージョン番号脚注 1 |
ディスク・グループにOracle ADVMボリュームを含めることができるかどうかを決定します。 デフォルトでは、 |
|
有効なOracle Databaseバージョン番号脚注 1 |
Oracle ASMインスタンスでディスク・グループを使用するために必要な最小ソフトウェア・バージョンを指定します。この設定は、ディスク上のOracle ASMメタデータのデータ構造の形式にも影響します。 Oracle Database 11gのOracle ASMでは、 |
|
有効なOracle Databaseバージョン番号脚注 1 |
すべてのデータベース・インスタンスでディスク・グループを使用するために必要な
Oracle Database 11gのOracle ASMでは、SQLの |
|
|
ディスク・グループのリバランスのためにデータ・コピー操作を実行する際のコンテンツ・チェックを有効化( デフォルト値は
COMPATIBLE.ASM 属性に依存し、次のルールに従います。
ノート: このルールは、新しいディスク・グループの作成に対してのみ有効です。既存のディスク・グループの |
|
0から136年 |
ディスクは、オフラインに切り替えられると、デフォルトの時間が経過した後にOracle ASMによって削除されます。 時間は分単位(M)または時間単位(H)で指定できます。指定した経過時間は、ディスク・グループがマウントされているときにのみ加算されます。単位を省略した場合、デフォルトはHになります。この属性を省略し、 ノート: 参照: 詳細は、「 |
|
< |
ディスク・グループ内の障害グループのデフォルトの修復時間を指定します。Oracle ASMで障害グループ全体が失敗したと判別される場合、障害グループの修復時間が使用されます。デフォルト値は、24時間(
この属性は、ディスク・グループの変更時にのみ設定でき、標準冗長性および高冗長性のディスク・グループにのみ適用できます。 |
|
512、4096または4 |
ディスク・グループの論理セクター・サイズを設定します。この値は、ディスク・グループが受け入れることのできる最小許容I/Oを指定します。デフォルト値は、ディスク・グループに参加するディスクから推定されます。 このディスク・グループ属性をディスク・グループの作成中に設定するか、またはディスク・グループの作成後に変更するには、 |
|
|
ディスク・グループのレプリケーション・ステータスを追跡します。ディスク・グループのOracle ASM互換性が12.0以降に昇格されていると、各ディスクの物理メタデータ(ディスク・ヘッダー、表のブロックの空き領域、表のブロックの割当てなど)がレプリケートされます。このレプリケーションは、オンライン非同期で実行されます。ディスク・グループに含まれる各ディスクの物理メタデータがレプリケートされると、Oracle ASMは このディスク・グループ属性は、Oracle ASMディスク・グループ互換性( |
|
|
物理的に離れた複数サイトにわたるノードを含むOracle拡張クラスタでは、ディスク・グループに対して優先読取り機能を有効化するかどうかは、 このディスク・グループ属性は、Oracle ASMディスク・グループ互換性( |
|
512、4096または4 |
ディスク・グループの物理セクター・サイズを設定します。ディスク・グループ内のすべてのディスクは、この物理セクター・サイズである必要があります。デフォルト値は、ディスク・グループに参加するディスクから取得されます。 このディスク・グループ属性をディスク・グループの作成中に設定するには、 |
|
|
ディスク・グループのリバランスの完了後に未使用の記憶域領域を破棄する機能を有効化( |
CONTENT_HARDCHECK |
true またはfalse |
CONTENT_HARDCHECK は、ディスク・グループのリバランスのためにデータ・コピー操作を実行する際のHardware Assisted Resilient Data (HARD)チェックを有効化または無効化します。この属性は、ディスク・グループの変更時にのみ設定できます。
|
脚注 1
有効なOracle Databaseリリース番号の最初の2桁以上を指定してください。有効なバージョン番号の指定の詳細は、『Oracle Database管理者ガイド』を参照してください。たとえば、compatibility
を'11.2'または'12.1'として指定できます。
関連項目:
これらの属性設定の管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
例
次の例では、ASM_DISKSTRING
パラメータは/devices/disks/c*
のスーパーセットであり、/devices/disks/c*
がOracle ASMディスクとして使用される1つ以上のデバイスを指し、Oracle Databaseユーザーはディスクに対する読取り/書込み権限を持っていることを想定しています。
関連項目:
Oracle ASMおよびディスク・グループを使用してデータベース管理を簡略化する方法については、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
ディスク・グループの作成: 例
次の文は、Oracle ASMディスク・グループdgroup_01
を作成します。このディスク・グループには、Oracle ASMによって冗長性が提供されておらず、search_string
と一致するすべてのディスクが含まれています。
CREATE DISKGROUP dgroup_01 EXTERNAL REDUNDANCY DISK '/devices/disks/c*';