5 Oracle ASMファイル、ディレクトリおよびテンプレートの管理
Oracle ASMの管理には、ファイル、ディレクトリおよびテンプレートの管理が含まれています。
この章では、Oracle Automatic Storage Management(Oracle ASM)のストレージ・オプションを使用する場合のファイル管理方法について説明します。
この章のトピックは、次のとおりです:
Oracle ASMでサポートされるファイルのタイプ
Oracle ASMでは、データベースに必要なほとんどのファイル・タイプがサポートされます。
表5-1に、Oracle ASMで直接サポートされるファイル・タイプと、ファイル作成用の属性を提供するシステム・デフォルト・テンプレートを示します。表に示したファイル・タイプの一部は特定の製品または機能に関連しており、このマニュアルでは説明していません。
表5-1 Oracle ASMによってサポートされるファイル・タイプ
ファイル・タイプ | デフォルトのテンプレート |
---|---|
アーカイブ・ログ・ファイル |
|
Oracle ASM永続初期化パラメータ・ファイル(SPFILE) |
|
Oracle ASM永続初期化パラメータ・ファイル(SPFILE)バックアップ |
|
監査スピル・ファイル |
|
自動生成制御ファイル・バックアップ |
|
自動ログイン・ソフトウェア・キーストア |
|
アーカイブ・ログ・バックアップ・ピース |
|
データファイル・バックアップ・ピース |
|
データファイル増分ピース |
|
変更トラッキング・ファイル |
|
制御ファイル |
|
データファイル・コピー |
|
データファイル |
|
Data Guard構成ファイル |
|
データ・ポンプ・ダンプセット |
|
フラッシュバック・ログ |
|
フラッシュ・ファイル |
|
クロスプラットフォーム・トランスポータブル・データファイル増分バックアップ |
|
ソフトウェア・キーストア |
|
Oracle Cluster Registryファイル |
|
REDOログ・ファイル |
|
永続初期化パラメータ・ファイル(SPFILE) |
|
一時ファイル |
|
投票ファイル |
|
クロスプラットフォーム・トランスポータブル・データファイル |
|
クロスプラットフォーム・トランスポータブル・データファイル・バックアップ |
|
Oracle ASM Dynamic Volume Managerボリューム |
該当なし |
Oracle ASMでは、ディスク・グループに対する一部の管理ファイル・タイプを直接サポートできません。これらのファイルには、トレース・ファイル、監査ファイル、アラート・ログ、エクスポート・ファイル、tarファイルおよびコア・ファイルがあります。
注意:
Oracle Automatic Storage Management Cluster File System (Oracle ACFS)およびOracle ASM Dynamic Volume Manager (Oracle ADVM)により、Oracle ASMでのサポートは、データベースおよびアプリケーションの実行可能ファイル、データベース・データファイル、データベース・トレース・ファイル、データベース・アラート・ログ、アプリケーション・レポート、BFILEおよび構成ファイルが含まれるように拡張されます。他にも、ビデオ、オーディオ、テキスト、イメージ、設計図、その他の汎用アプリケーションのファイル・データがサポートされます。
関連項目:
-
Oracle ACFSでサポートされるファイルの詳細は、「Oracle ACFSおよびOracle ADVMの概要」
-
システム・デフォルト・テンプレートについては、「ディスク・グループ・テンプレートの管理」
-
ASMCMD
lstmpl
コマンドの出力の例は、「lstmpl」
Oracle ASMファイル名について
Oracle ASMで作成されたすべてのファイルには、完全修飾ファイル名(またはシステム生成のファイル名)と呼ばれる、Oracle Managed Filesによって生成されたファイル名が付けられます。完全修飾ファイル名は、Oracle ASMファイルシステムにおける完全なパス名を表します。次に、完全修飾ファイル名の例を示します。
+data/orcl/controlfile/Current.256.541956473
ユーザーは、完全修飾ファイル名を使用してOracle ASMファイルを参照(読取りまたは取得)できます。また、他の短縮ファイル名形式(エイリアスOracle ASMファイル名など)を使用してOracle ASMファイルを参照することもできます。
Oracle ASMでは、ファイル作成のリクエスト時に完全修飾ファイル名が生成されます。作成リクエストでは完全修飾ファイル名は指定されません(指定できません)。かわりに、より簡単な構文を使用してファイルが指定されます(エイリアスやディスク・グループ名など)。Oracle ASMは、そのファイルを作成し、ファイル・タイプに従って正しいOracle ASMパスに配置してから、適切な完全修飾ファイル名を割り当てます。作成リクエストでエイリアスを指定した場合は、Oracle ASMにより完全修飾ファイル名を参照するようにエイリアスも作成されます。
Oracle ASMファイル作成リクエストは、単一ファイル作成リクエストまたは複数ファイル作成リクエストのいずれかです。
注意:
-
生成された名前は、Oracleファイル名を表示するデータベース・ビュー(
V$DATAFILE
やV$LOGFILE
など)で見つけることができます。SQL文でOracle ASMファイルを参照する必要がある場合は、この名前を使用するか、この名前の短縮形を使用できます。他のOracle Databaseファイル名と同様に、Oracle ASMファイル名は制御ファイルおよびRMANカタログに保存されます。 -
REUSE
キーワードを指定した場合は、完全修飾ファイル名と数値ファイル名を単一ファイル作成で使用できます(「SQL文でのOracle ASMファイル名の使用」を参照)。 -
ファイル名では、スラッシュ(/)とバックスラッシュ(\)は置換え可能です。ファイル名の大文字と小文字は区別されませんが、保持されます。
表5-2では、各ファイル名形式に有効な使用方法を示します。その形式がファイル作成に使用される場合、この表では、作成されるファイルがOracle Managed Files(OMF)かどうかを示します。
表5-2 Oracle ASMファイル名形式の有効な使用方法
ファイル名の形式 | ファイル参照 | 単一ファイル作成 | 複数ファイル作成 | OMFとして作成される |
---|---|---|---|---|
完全修飾ファイル名 |
はい |
いいえ |
いいえ |
いいえ |
エイリアス・ファイル名 |
はい |
はい |
いいえ |
いいえ |
テンプレート付きエイリアス・ファイル名 |
いいえ |
はい |
いいえ |
いいえ |
不完全なファイル名 |
いいえ |
はい |
はい |
はい |
テンプレート付きの不完全なファイル名 |
いいえ |
はい |
はい |
はい |
この項では、次の項目について説明します。
複数ファイル作成形式
複数ファイル作成形式は、初期化パラメータDB_CREATE_FILE_DEST
に値を割り当てる場合など、Oracle ASMファイルの作成のために複数回使用されます。また、CREATE TABLESPACE
文を(ファイル名を指定せずに)複数回実行することもできます。そのたびに、Oracle ASMでは異なる一意のデータファイル名が作成されます。
複数ファイル作成形式を使用するときは、プラス記号が先頭に付いたディスク・グループ名(+data
)などの不完全なファイル名形式を使用できます。この場合は、DB_CREATE_FILE_DEST
を不完全なファイル名(たとえば、+data
)に設定すると、DB_CREATE_FILE_DEST
にデータベース・ファイルを作成する必要があるコマンドが実行されるたびに、指定されたディスク・グループにファイルが作成され、一意の完全修飾名が割り当てられます。他の*_DEST
初期化パラメータでは、不完全なファイル名を使用できます。
完全修飾ファイル名形式
完全修飾形式は、Oracle ASM操作(ディスク・グループの作成を除く)で既存のOracle ASMファイルを参照する場合に使用できます。この形式は、Oracle ASMファイルの作成時にOracle ASMで自動的に生成されるOracle ASMファイル名です。
非マルチテナント環境では、完全修飾ファイル名の形式は次のとおりです。
+diskgroup/dbname/filetype/filetypetag.file.incarnation
マルチテナント・データベースでは、完全修飾ファイル名の形式は次のとおりです。
+diskgroup/cdb/pdb_guid/filetype/filetypetag.file.incarnation
完全修飾ファイル名のフィールドは次のとおりです。
-
+
diskgroup
は、プラス記号が先頭に付いたディスク・グループ名です。プラス記号(
+
)は、UNIXまたはLinuxコンピュータにおけるスラッシュ(/
)と同様に、Oracle ASMファイルシステムのルート・ディレクトリとみなすことができます。 -
dbname
は、ファイルが属するデータベースのDB_UNIQUE_NAME
です。 -
filetype
はOracleファイル・タイプであり、表5-3に示したファイル・タイプのいずれかにすることができます。 -
filetypetag
はファイルに関するタイプ固有の情報であり、表5-3に示したタグのいずれかにすることができます。 -
file.incarnation
はファイル/インカネーションのペアであり、一意性の保証に使用されます。 -
cdb
はCDBの名前です。 -
pdb_guid
はPDBのGUID値です。
完全修飾されたOracle ASMファイル名の例を次に示します。
SQL> SELECT NAME FROM V$DATAFILE; NAME --------------------------------------------------------------------------- +DATA/ORCL/DATAFILE/system.257.967544915 +DATA/ORCL/DATAFILE/sysaux.258.967544961 +DATA/ORCL/DATAFILE/undotbs1.259.967544985 +DATA/ORCL/64A52F53A7693286E053CDA9E80AED76/DATAFILE/system.267.967545119 +DATA/ORCL/64A52F53A7693286E053CDA9E80AED76/DATAFILE/sysaux.266.967545119 +DATA/ORCL/DATAFILE/users.260.967544987 ...
表5-3 Oracleファイル・タイプとOracle ASMファイル・タイプ・タグ
Oracle ASMファイル・タイプ | 説明 | Oracle ASMファイル・タイプ・タグ | 備考 |
---|---|---|---|
|
制御ファイルとバックアップ制御ファイル |
現行 バックアップ |
アーカイブ バックアップ |
|
データファイルとデータファイル・コピー |
|
ファイルが追加される表領域の名前 |
|
オンライン・ログ |
|
|
|
アーカイブ・ログ |
|
|
|
一時ファイル |
|
ファイルが追加される表領域の名前 |
|
データファイルとアーカイブ・ログのバックアップ・ピース(データファイルの増分バックアップ・ピース) |
|
|
|
永続パラメータ・ファイル |
|
SPFILEの名前 |
|
Data Guard構成ファイル |
|
Data Guardでは、 |
|
フラッシュバック・ログ |
|
|
|
ブロック・チェンジ・トラッキング・データ |
|
増分バックアップ中に使用されます。 |
|
データ・ポンプ・ダンプセット |
|
ダンプ・セット・ファイルは、ユーザー名、ダンプ・セットが作成されたジョブ番号およびファイル番号をタグの一部としてエンコードします。 |
|
データファイル変換 |
|
Oracle ASMメタデータが追加される表領域の名前 |
|
自動バックアップ・ファイル |
|
|
|
Oracle ASM永続パラメータ・ファイル |
|
Oracle ASM SPFILEの名前 |
|
Oracle Clusterware Registryファイル |
|
OCRファイルの名前 |
エイリアスOracle ASMファイル名形式
エイリアスOracle ASMファイル名は、既存のOracle ASMファイルの参照と新しいOracle ASMファイルの作成の両方に使用できます。エイリアス名は、プラス記号が先頭に付いたディスク・グループ名で始まり、その後に名前文字列を指定します。エイリアス・ファイル名は、階層ディレクトリ構造を使用して実装され、名前の構成要素はスラッシュ(/)または円記号(\)で区切られます。エイリアスは、Oracle Managed Filesで生成された(システム生成の)またはユーザー作成のOracle ASMディレクトリで作成できます。エイリアスにはディスク・グループ名を含める必要があります。ルート・レベル(+
)ではエイリアスを作成できません。
エイリアス・ファイル名を使用してOracle ASMファイルを作成すると、そのファイルは完全修飾ファイル名で作成され、さらにエイリアス・ファイル名も作成されます。これにより、どちらの名前でもファイルにアクセスできるようになります。
エイリアスOracle ASMファイル名はドット区切りの数値ペアで終わっていないため、完全修飾ファイル名や数値ファイル名とは区別されます。USERS.259.685366091
形式など、ドット区切りの数値ペアで終わるエイリアスを作成しようとすると、エラーが発生します。次に、Oracle ASMエイリアス・ファイル名の例を示します。
+data/orcl/control_file1 +fra/recover/second.dbf
Oracle Databaseは、エイリアスを使用してデータベース・ファイルを作成した場合にのみ、エイリアス・ファイル名でデータベース・ファイルを参照します。エイリアスを使用せずにデータベース・ファイルを作成し、後でエイリアスを追加した場合は、データベースは完全修飾ファイル名でファイルを参照します。次に、データベースによるエイリアス・ファイル名の使用方法の例を示します。
-
エイリアス・ファイル名はV$ビューに表示されます。たとえば、表領域を作成し、データファイルのエイリアス・ファイル名を使用した場合は、
V$DATAFILE
ビューにエイリアス・ファイル名が表示されます。 -
制御ファイルがデータファイルとオンラインREDOログ・ファイルを指定する場合、その制御ファイルではエイリアス・ファイル名を使用できます。
-
CONTROL_FILES
初期化パラメータでは、制御ファイルのエイリアス・ファイル名を使用できます。Database Configuration Assistant (DBCA)は、エイリアス・ファイル名を使用して制御ファイルを作成します。
注意:
エイリアス・ファイル名を使用して作成されたファイルは、Oracle Managed Filesとはみなされず、不要になった場合は手動による削除が必要になることがあります。
エイリアス・ファイル名の詳細は、「Oracle ASMファイル名のエイリアス名の管理」を参照してください。
Oracle ASMでの表領域の作成: エイリアス名でのデータファイルの使用
例5-1では、エイリアス名を持つデータファイルと、ユーザー定義テンプレートmy_undo_template
で設定される属性を使用してUNDO表領域が作成されます。この例は、エイリアス名を含めるディレクトリがdata
ディスク・グループに作成されていること、およびユーザー定義テンプレートが存在することを前提としています。
データファイルの作成時にはエイリアスが使用されるため、そのファイルはOracle Managed Files (OMF)ファイルではなく、表領域を削除しても自動的に削除されません。表領域の削除後に手動でファイルを削除するには、次のSQL文を使用します。
ALTER DISKGROUP data DROP FILE '+data/orcl/my_undo_ts';
例5-1 エイリアス名を使用した表領域の作成
CREATE UNDO TABLESPACE myundo DATAFILE '+data(my_undo_template)/orcl/my_undo_ts' SIZE 200M;
テンプレート付きのエイリアスOracle ASMファイル名形式
テンプレート付きのエイリアスOracle ASMファイル名は、Oracle ASMファイル作成操作にのみ使用されます。この形式は次のとおりです。
+
diskgroup(templatename)/alias
テンプレート付きのエイリアス・ファイル名は、エイリアス・ファイル名と同じように機能します。ただし、テンプレート付きのエイリアス・ファイル名で作成されたファイルは、名前付きのテンプレートによって指定された属性を受け取ります。テンプレートは、ファイルが作成されるディスク・グループに属している必要があります。
次に、テンプレート付きエイリアスOracle ASMファイル名の例を示します。
+data(mytemplate)/config1
この例のようにテンプレート名を明示的に指定すると、作成されるファイルのタイプに対するシステム・デフォルト・テンプレートは無効になります。
注意:
テンプレート付きエイリアス・ファイル名を使用して作成されたファイルは、Oracle Managed Filesとはみなされず、不要になった場合は手動による削除が必要になることがあります。
関連項目:
-
エイリアス名を使用したオブジェクトの作成の詳細は、例5-1
-
Oracle ASMテンプレートの作成およびメンテナンスの詳細は、「ディスク・グループのテンプレートの管理」
不完全なOracle ASMファイル名形式
不完全なOracle ASMファイル名は、ファイル作成操作にのみ使用され、単一ファイル作成と複数ファイル作成の両方に使用されます。このファイル名は、ディスク・グループ名のみで構成されます。Oracle ASMでは、システム・デフォルト・テンプレートを使用してOracle ASMファイルのミラー化およびストライプ化属性が決定されます。使用されるシステム・テンプレートは、作成されるファイル・タイプによって決まります。たとえば、表領域のデータファイルを作成する場合は、DATAFILE
テンプレートが使用されます。
不完全なOracle ASMファイル名の使用例としては、たとえばDB_CREATE_FILE_DEST
初期化パラメータを次のように設定します。
+data
この設定を使用すると、表領域を作成するたびにデータファイルがdata
ディスク・グループに作成され、各データファイルには異なる完全修飾名が割り当てられます。詳細は、「ディスク・グループ指定にデフォルトのファイルの場所を使用したOracle ASMファイルの作成」を参照してください。
テンプレート付きの不完全なOracle ASMファイル名形式
テンプレート付きの不完全なOracle ASMファイル名は、ファイル作成操作にのみ使用され、単一ファイル作成と複数ファイル作成の両方に使用されます。このファイル名は、ディスク・グループ名とそれに続くカッコで囲まれたテンプレート名で構成されます。ファイル名で明示的にテンプレートを指定すると、Oracle ASMはそのファイル・タイプのデフォルト・テンプレートではなく指定されたテンプレートを使用して、ファイルの属性を決定します。
テンプレート付きの不完全なOracle ASMファイル名の使用例としては、たとえばDB_CREATE_FILE_DEST
初期化パラメータを次のように設定します。
+
data(mytemplate)
データベースにおけるOracle ASMファイルの作成と参照
エイリアスを使用して作成していないかぎり、Oracle ASMファイルはOracle Managed Fileです。Oracle Managed Fileは、不要になると自動的に削除されます。
この項では、次の項目について説明します。
ディスク・グループ指定にデフォルトのファイルの場所を使用したOracle ASMファイルの作成
オペレーティング・システム・ファイルに対してOracle Managed Files機能を使用すると、データファイル、一時ファイル、REDOログ・ファイルおよび制御ファイルのデフォルトの作成場所としてディレクトリを指定できます。Oracle ASMに対してOracle Managed Files機能を使用すると、これらのファイルおよび他のタイプのファイル(アーカイブ・ログ・ファイルなど)のデフォルトの作成場所として、不完全なOracle ASMファイル名の形式でディスク・グループを指定できます。オペレーティング・システム・ファイルの場合と同様に、デフォルト・ディスク・グループの名前は初期化パラメータに格納され、ファイル作成時にファイル指定(たとえば、DATAFILE
句)が明示的に行われていない場合は必ず使用されます。
次の初期化パラメータでは、複数ファイル作成コンテキスト形式のOracle ASMファイル名を宛先として使用できます。
-
DB_CREATE_FILE_DEST
データファイルおよび一時ファイルを作成するデフォルト・ディスク・グループの場所を指定します。
-
DB_CREATE_ONLINE_LOG_DEST_
n
REDOログおよび制御ファイルを作成するデフォルト・ディスク・グループの場所を指定します。
-
DB_RECOVERY_FILE_DEST
このパラメータが指定され、
DB_CREATE_ONLINE_LOG_DEST_
n
およびCONTROL_FILES
が指定されていない場合は、制御ファイルおよびREDOログ・ファイルのコピーが含まれる、高速リカバリ領域用のデフォルト・ディスク・グループを指定します。 -
CONTROL_FILES
制御ファイルを作成するディスク・グループを指定します。
次の初期化パラメータでは、複数ファイル作成コンテキスト形式のOracle ASMファイル名およびOracle ASMディレクトリ名を宛先として使用できます。
-
LOG_ARCHIVE_DEST_
n
REDOログ・ファイルのアーカイブ先としてデフォルト・ディスク・グループまたはOracle ASMディレクトリを指定します。
-
LOG_ARCHIVE_DEST
REDOログ・ファイルのアーカイブ先としてデフォルト・ディスク・グループまたはOracle ASMディレクトリを指定するためのオプションのパラメータ。1つの宛先のみを指定する場合に使用します。
-
STANDBY_ARCHIVE_DEST
スタンバイ・データベースにのみ関連します。プライマリ・データベースから受け取るアーカイブ・ログの場所となるデフォルト・ディスク・グループまたはOracle ASMディレクトリを指定します。このマニュアルでは説明していません。このパラメータは現在非推奨になっています。『Oracle Data Guard概要および管理』を参照してください。
次のCREATE
TABLESPACE
SQL文では、Oracle ASMファイル(この場合はデータファイル)がどのようにデフォルト・ディスク・グループに作成されるのかを示します。この例では、DB_CREATE_FILE_DEST
初期化パラメータが+data
に設定されていることを前提としています。
SQL> CREATE TABLESPACE mytblspace;
Oracle ASMにより、data
ディスク・グループ内のOracle ASMディスクではmytblspace
のデータファイルが自動的に作成されて管理されます。ファイル・エクステントは、データファイルのデフォルト・テンプレートで定義された属性を使用して格納されます。
関連項目:
-
初期化パラメータについては、『Oracle Databaseリファレンス』を参照してください。
-
初期化パラメータ・ファイルについては、『Oracle Database管理者ガイド』を参照してください。
SQL文でのOracle ASMファイル名の使用
Oracle ASMファイル名は、SQL文のファイル指定句で指定できます。初めてファイルを作成する場合は、Oracle ASMファイル名の作成形式を使用します。Oracle ASMファイルが存在する場合は、参照形式のファイル名を使用する必要があり、ファイルを再作成する場合は、領域が新しいファイルに再利用されるように、REUSE
キーワードを追加する必要があります。たとえば、「Oracle ASMでの制御ファイルの作成」に示されているように、制御ファイルを再作成する場合は、このような使用方法が可能です。
参照形式をREUSE
キーワードとともに使用し、ファイルが存在しない場合は、エラーが発生します。
例5-2に、SQL文でOracle ASMファイル名を指定する例を示します。この場合、ファイル作成形式で使用されます。
表領域mytblspace
が作成されます。この表領域は、ディスク・グループdata
に含まれている、サイズが200MBの1つのデータファイルで構成されます。データファイルは自動拡張可能に設定され、最大サイズの制限もありません。AUTOEXTEND
句を使用すると、このデフォルトを無効にすることができます。
SQL文でのOracle ASMファイル名の他の使用例は、「SQL*Plusを使用したOracle ASMでのデータベース・ファイルの作成」を参照してください。
例5-2 SQL文でのOracle ASMファイル名の使用
CREATE TABLESPACE mytblspace DATAFILE '+data' SIZE 200M AUTOEXTEND ON;
ALTER DATABASEを使用したディスク・グループ間のデータファイルの移動
ALTER
DATABASE
MOVE
DATAFILE
SQL文を使用して、データベースがオープンしていてユーザーがデータファイルにアクセスしている場合に、ディスク・グループ間でデータファイルを移動できます。
例5-3に、DATA
ディスク・グループからDATA2
ディスク・グループにデータファイルを移動する方法を示します。
例5-3 ALTER DATABASE MOVE DATAFILEを使用したオンラインでのデータファイルの移動
/* Create a new disk group DATA2 using ASMCA, ASMCMD, or SQL */ /* Then create appropriate directories in the DATA2 disk group */ ALTER DISKGROUP data2 ADD DIRECTORY '+DATA2/ORCL'; ALTER DISKGROUP data2 ADD DIRECTORY '+DATA2/ORCL/DATAFILE'; /* Move the EXAMPLE data file in DATA to EXAMPLE_STORAGE in DATA2 ALTER DATABASE MOVE DATAFILE '+DATA/ORCL/DATAFILE/EXAMPLE.266.798707687' TO '+DATA2/ORCL/DATAFILE/EXAMPLE_STORAGE'; SELECT SUBSTR(name,1,64) FROM V$DATAFILE; SUBSTR(NAME,1,64) ---------------------------------------------------------------- +DATA/ORCL/DATAFILE/system.258.798707555 +DATA2/ORCL/DATAFILE/example_storage +DATA/ORCL/DATAFILE/sysaux.257.798707491 +DATA/ORCL/DATAFILE/undotbs1.260.798707621 +DATA/ORCL/DATAFILE/users.259.798707621
関連項目:
-
ALTER
DATABASE
MOVE
DATAFILE
SQL文を使用してデータファイルを移動する方法の詳細は、『Oracle Database管理者ガイド』 -
ALTER
DATABASE
SQL文の使用の詳細は、『Oracle Database SQL言語リファレンス』 -
RMANを使用してディスク・グループ間でデータファイルを移動する方法の詳細は、「RMANを使用したOracle ASMディスク・グループ間でのデータファイルの移動」
Oracle ASMファイルのOracle Databaseファイル・マッピング
I/Oパフォーマンスについて理解するには、ファイルが格納されている記憶域の階層の詳細を知る必要があります。
Oracle Databaseには、ファイル、論理ボリュームの中間レイヤーおよび実際の物理デバイスのマッピング全体を表示する動的パフォーマンス・ビューが用意されています。これらの動的ビューを使用すると、ファイル・ブロックがあるディスクを正確に特定できます。
Oracle Databaseは、FMON
と呼ばれるバックグラウンド・プロセスと通信し、マッピング情報を管理します。OracleにはPL/SQL DBMS_STORAGE_MAP
パッケージが用意されており、これによりマッピング・ビューを移入するマッピング操作を起動します。
Oracle Databaseファイル・マッピングは、Oracle ASMファイルのマッピング時にサード・パーティ・ライブラリを必要としません。また、Oracle Databaseは、すべてのオペレーティング・システム・プラットフォームでOracle ASMファイルをサポートします。
この項のすべての例は、Oracle Databaseインスタンス上で実行されます。
, 「""」を参照してください。
この項では、次の項目について説明します。
関連項目:
-
Oracle ACFSファイルとのファイル・マッピングの詳細は、「Oracle ACFSによるOracle Databaseファイル・マッピング・ビューのサポート」
-
Oracle Databaseファイル・マッピングの詳細は、『Oracle Database管理者ガイド』
Oracle ASMファイルを使用したファイル・マッピングの有効化
ファイル・マッピングを有効化するには、FILE_MAPPING
初期化パラメータをTRUE
に設定します。このパラメータを設定するためにデータベース・インスタンスを停止する必要はありません。パラメータは、次のALTER
SYSTEM
文を使用して設定できます。
SQL> ALTER SYSTEM SET FILE_MAPPING=TRUE;
適切なDBMS_STORAGE_MAP
マッピング・プロシージャを実行します。
-
コールド・スタートの使用例では、Oracle Databaseが起動したのみで、まだマッピング操作は起動されていません。
DBMS_STORAGE_MAP.MAP_ALL
プロシージャを実行して、データベースに関連するI/Oサブシステム全体のマッピング情報を作成できます。たとえば、次のコマンドでは、マッピング情報が作成され、10000のエクステントが提供されます。
SQL> EXECUTE DBMS_STORAGE_MAP.MAP_ALL(10000);
-
ウォーム・スタートの使用例では、マッピング情報はすでに作成されており、
DBMS_STORAGE_MAP.MAP_SAVE
プロシージャを起動してマッピング情報をデータ・ディクショナリに保存するかどうかをオプションで選択できます。このプロシージャは、デフォルトで
DBMS_STORAGE_MAP.MAP_ALL()
内で起動します。これにより、SGA内のすべてのマッピング情報がディスクに強制的にフラッシュされます。DBMS_STORAGE_MAP.MAP_SAVE
プロシージャは、デフォルトでDBMS_STORAGE_MAP.MAP_ALL()
内で起動します。
データベースの再起動後に、DBMS_STORAGE_MAP.RESTORE()
を使用してマッピング情報をSGAにリストアします。必要な場合は、DBMS_STORAGE_MAP.MAP_ALL()
をコールしてマッピング情報をリフレッシュできます。
Oracle ASMファイルを使用したファイル・マッピング・ビューの使用
DBMS_STORAGE_MAP
パッケージにより生成されたマッピング情報は、動的パフォーマンス・ビューで取得されます。これらのビューには、V$MAP_COMP_LIST
、V$MAP_ELEMENT
、V$MAP_EXT_ELEMENT
、V$MAP_FILE
、V$MAP_FILE_EXTENT
、V$MAP_FILE_IO_STACK
、V$MAP_LIBRARY
およびV$MAP_SUBELEMENT
が含まれます。
たとえば、V$MAP_FILE
を使用してファイル・マッピングを表示できます。
SQL> SELECT FILE_MAP_IDX, SUBSTR(FILE_NAME,1,45), FILE_TYPE, FILE_STRUCTURE FROM V$MAP_FILE; FILE_MAP_IDX SUBSTR(FILE_NAME,1,45) FILE_TYPE FILE_STRU ------------ --------------------------------------------- ----------- --------- 0 +DATA/ORCL/DATAFILE/system.258.841314095 DATAFILE ASMFILE 1 +DATA/ORCL/DATAFILE/sysaux.257.841314021 DATAFILE ASMFILE 2 +DATA/ORCL/DATAFILE/undotbs1.260.841314161 DATAFILE ASMFILE 3 +DATA/ORCL/DATAFILE/example.266.841314219 DATAFILE ASMFILE 4 +DATA/ORCL/DATAFILE/users.259.841314161 DATAFILE ASMFILE 5 +DATA/ORCL/ONLINELOG/group_3.264.841314209 LOGFILE ASMFILE 6 +FRA/ORCL/ONLINELOG/group_3.259.841314211 LOGFILE ASMFILE 7 +DATA/ORCL/ONLINELOG/group_2.263.841314207 LOGFILE ASMFILE 8 +FRA/ORCL/ONLINELOG/group_2.258.841314207 LOGFILE ASMFILE 9 +DATA/ORCL/ONLINELOG/group_1.262.841314203 LOGFILE ASMFILE 10 +FRA/ORCL/ONLINELOG/group_1.257.841314203 LOGFILE ASMFILE 11 +DATA/ORCL/TEMPFILE/temp.265.841314217 TEMPFILE ASMFILE 12 +DATA/ORCL/CONTROLFILE/current.261.841314199 CONTROLFILE ASMFILE 13 +FRA/ORCL/CONTROLFILE/current.256.841314201 CONTROLFILE ASMFILE
関連項目:
動的ビューの詳細は、『Oracle Databaseリファレンス』を参照してください
Oracle ASMファイルを使用したDBMS_STORAGE_MAPパッケージの使用
DBMS_STORAGE_MAP
PL/SQLパッケージでプロシージャを使用して、マッピング操作を制御できます。たとえば、DBMS_STORAGE_MAP.MAP_OBJECT
プロシージャを使用して、オブジェクト名、所有者およびタイプで指定されたデータベース・オブジェクトのマッピング情報を作成できます。DBMS_STORAGE_MAP.MAP_OBJECT
プロシージャを実行した後、問合せを作成してMAP_OBJECT
ビューに含まれるマッピング情報を表示できます。
SQL> EXECUTE DBMS_STORAGE_MAP.MAP_OBJECT('EMPLOYEES','HR','TABLE'); SQL> SELECT io.OBJECT_NAME o_name, io.OBJECT_OWNER o_owner, io.OBJECT_TYPE o_type, mf.FILE_NAME, me.ELEM_NAME, io.DEPTH, (SUM(io.CU_SIZE * (io.NUM_CU - DECODE(io.PARITY_PERIOD, 0, 0, TRUNC(io.NUM_CU / io.PARITY_PERIOD)))) / 2) o_size FROM MAP_OBJECT io, V$MAP_ELEMENT me, V$MAP_FILE mf WHERE io.OBJECT_NAME = 'EMPLOYEES' AND io.OBJECT_OWNER = 'HR' AND io.OBJECT_TYPE = 'TABLE' AND me.ELEM_IDX = io.ELEM_IDX AND mf.FILE_MAP_IDX = io.FILE_MAP_IDX GROUP BY io.ELEM_IDX, io.FILE_MAP_IDX, me.ELEM_NAME, mf.FILE_NAME, io.DEPTH, io.OBJECT_NAME, io.OBJECT_OWNER, io.OBJECT_TYPE ORDER BY io.DEPTH; O_NAME O_OWNER O_TYPE FILE_NAME ELEM_NAME DEPTH O_SIZE --------- ------- ------ ----------------------------------------- ---------------- ----- ------ EMPLOYEES HR TABLE +DATA/ORCL/DATAFILE/example.266.841314219 +/devices/diskd2 0 64 EMPLOYEES HR TABLE +DATA/ORCL/DATAFILE/example.266.841314219 +/devices/diske2 0 64
関連項目:
DBMS_STORAGE_MAP
パッケージの詳細は、『Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス』を参照してください。
Oracle ASMファイル名のエイリアス名の管理
エイリアス名(またはエイリアス)は、システム生成のファイル名を使用するのではなく、Oracle ASMファイルをより簡単に参照するための手段です。
データベース内でファイルを作成するときにファイルのエイリアスを作成したり、ALTER
DISKGROUP
文のADD ALIAS
句を使用して既存のファイルにエイリアスを追加したりできます。エイリアスは、システム生成またはユーザー作成のOracle ASMディレクトリで作成できます。エイリアスにはディスク・グループ名を含める必要があります。ルート・レベル(+
)ではエイリアスを作成できません。
この項では、次の項について説明します。
関連項目:
-
ALTER
DISKGROUP
文の詳細は、『Oracle Database SQL言語リファレンス』 -
ASMCMDを使用したエイリアスの作成の詳細は、「mkalias」
Oracle ASMファイル名のエイリアス名の追加
ALTER DISKGROUP
文のADD
ALIAS
句を使用して、Oracle ASMファイル名のエイリアス名を作成します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。
例5-4では、システム生成のファイル名に新しいエイリアス名を追加します。
例5-4 Oracle ASMファイル名のエイリアス名の追加
ALTER DISKGROUP data ADD ALIAS '+data/orcl/second.dbf' FOR '+data/orcl/datafile/mytable.342.123456789';
Oracle ASMファイル名のエイリアス名の変更
ALTER DISKGROUP
文の RENAME ALIAS
句を使用して、Oracle ASMファイル名のエイリアス名を変更します。新旧のエイリアス名は、エイリアス名の完全ディレクトリ・パスで構成されている必要があります。
例5-5では、エイリアス名を変更します。
エイリアス名を変更しても、エイリアスに対するデータベース参照は更新されません。
例5-5 Oracle ASMファイル名のエイリアス名の変更
ALTER DISKGROUP data RENAME ALIAS '+data/orcl/datafile.dbf' TO '+data/payroll/compensation.dbf';
Oracle ASMファイル名のエイリアス名の削除
ALTER DISKGROUP
文のDROP ALIAS
句を使用して、Oracle ASMファイル名のエイリアスを削除します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。エイリアスが参照する基礎となるファイルは変更されません。
例5-6では、エイリアスを削除します。
例5-7は、システム生成のファイル名を削除しようとしており、この構文は許可されないため、失敗します。
例5-6 Oracle ASMファイル名のエイリアス名の削除
ALTER DISKGROUP data DROP ALIAS '+data/payroll/compensation.dbf';
例5-7 Oracle ASMファイル名のエイリアス名の削除
ALTER DISKGROUP data DROP ALIAS '+data/orcl/datafile/mytable.342.123456789';
ディスク・グループからのファイルおよび関連エイリアスの削除
ALTER DISKGROUP
文のDROP
FILE
句を使用して、ディスク・グループからOracle ASMファイルおよび関連するエイリアスを削除できます。削除するファイルを指定する場合は、完全修飾ファイル名またはエイリアス名を使用する必要があります。エイリアスを削除しても、ファイルシステム上で基礎となるファイルは削除されません。
ファイルを削除する必要がある理由には、次のようなものがあります。
-
エイリアスを使用して作成されるファイルはOracle Managed Fileではありません。そのため、このファイルは自動的に削除されません。
-
データベースの特定の時間におけるリカバリにより、表領域が作成される前の時間にデータベースがリストアされる可能性があります。リストアによって表領域は削除されませんが、リストアされたデータベースでこの表領域(またはそのデータファイル)は参照されていません。このデータファイルは手動で削除できます。
例5-8では、ファイルとエイリアスの両方をディスク・グループから削除する際に、ファイルのエイリアス名を使用します。
例5-9では、ファイルおよび関連エイリアスを削除する際に、Oracle Managed Files(システム生成)のファイル名を使用します。
例5-8 エイリアス名を使用したファイルとエイリアスのディスク・グループからの削除
ALTER DISKGROUP data DROP FILE '+data/payroll/compensation.dbf';
例5-9 システム生成の名前を使用したファイルとエイリアスのディスク・グループからの削除
ALTER DISKGROUP data DROP FILE '+data/orcl/datafile/mytable.342.123456789';
ディスク・グループ・ディレクトリの管理
Oracle ASMディスク・グループには、Oracle ASMファイルを格納するためのシステム生成の階層ディレクトリ構造があります。Oracle ASMにより各ファイルに割り当てられるシステム生成のファイル名は、このディレクトリ階層内のパスを示します。次に、システム生成のファイル名の例を示します。
+data/orcl/CONTROLFILE/Current.256.541956473
プラス記号は、Oracle ASMファイルシステムのルートを示します。data
ディレクトリは、ディスク・グループdata
内のすべてのファイルの親ディレクトリです。orcl
ディレクトリはorcl
データベース内のすべてのファイルの親ディレクトリで、CONTROLFILE
ディレクトリにはorcl
データベースのすべての制御ファイルが含まれます。
この階層には、作成するエイリアスを格納するための独自のディレクトリを作成できます。このため、Oracle ASMファイル用としてわかりやすいエイリアス名の他に、これらの名前に対してもわかりやすいパスを使用できます。
この項では、ALTER DISKGROUP
文を使用してエイリアスのディレクトリ構造を作成する方法について説明します。また、ディレクトリ名の変更方法や、ディレクトリの削除方法についても説明します。この項では、次の項目について説明します。
ディレクトリの作成
ALTER DISKGROUP
文のADD DIRECTORY
句を使用して、Oracle ASMファイルのエイリアス名の階層ディレクトリ構造を作成します。スラッシュ文字(/)またはバックスラッシュ文字(\)を使用して、ディレクトリ・パスのコンポーネントを区切ります。ディレクトリ・パスは、先頭にプラス記号 (+)が付いたディスク・グループ名にする必要があり、その後に任意のサブディレクトリ名を指定できます。
ディレクトリ内でサブディレクトリまたはエイリアスを作成するには、その親ディレクトリが存在している必要があります。ディレクトリは、ディスク・グループ・レベルの下に作成する必要があります。
例5-10では、ディスク・グループdata
の階層ディレクトリを作成し、このディレクトリには、+data/orcl/control_file1
などのエイリアス名を含めることができます。
例5-11のSQL文は、+data/orcl
ディレクトリの下にサブディレクトリがない場合、失敗します。
例5-10 新規ディレクトリの作成
ALTER DISKGROUP data ADD DIRECTORY '+data/orcl';
例5-11 新規サブディレクトリの作成
ALTER DISKGROUP data ADD DIRECTORY '+data/orcl/first_dir/second_dir';
ディレクトリ名の変更
ALTER DISKGROUP
文のRENAME DIRECTORY
句を使用して、ディレクトリ名を変更できます。システム生成のディレクトリ(システム生成の名前が含まれるディレクトリ)は、名前を変更できません。ルート・レベル(ディスク・グループ名)は、名前を変更できません。
例5-12では、ディレクトリ名を変更します。
例5-12 ディレクトリ名の変更
ALTER DISKGROUP data RENAME DIRECTORY '+data/mydir' TO '+data/yourdir';
ディレクトリの削除
ALTER DISKGROUP
文のDROP DIRECTORY
句を使用して、ディレクトリを削除できます。システム生成のディレクトリは削除できません。FORCE
句も指定しないかぎり、エイリアス名を含むディレクトリは削除できません。
例5-13では、ディレクトリとその内容を削除します。
例5-13 ディレクトリの削除
ALTER DISKGROUP data DROP DIRECTORY '+data/yourdir' FORCE;
XML DB仮想フォルダによるOracle ASMファイルへのアクセス
Oracle ASMのファイルおよびディレクトリには、XML DBリポジトリ内の仮想フォルダからアクセスできます
仮想フォルダのリポジトリ・パスは/sys/asm
です。実際にはフォルダの内容はリポジトリ内に存在しないため、フォルダは仮想です。フォルダの内容は、通常のOracle ASMファイルおよびディレクトリとして存在します。たとえば、/sys/asm
は、プログラム的なAPI(DBMS_XDB
パッケージなど)とXML DBプロトコル(FTPやHTTP/WebDAVなど)でOracle ASMファイルおよびディレクトリにアクセスして操作する手段を提供します。ASMCMD cp
コマンドを使用してファイルをコピーすることもできます。
この機能の一般的な用途としては、/sys/asm
をWebフォルダとしてグラフィカル・ユーザー・インタフェースに(WebDAVプロトコルで)表示し、次にデータ・ポンプ・ダンプセットをOracle ASMディスク・グループからオペレーティング・システムのファイルシステムにドラッグ・アンド・ドロップでコピーします。
SYS
以外のユーザーとしてログインする必要があります。また、XML DBプロトコルで/sys/asm
にアクセスするには、DBA
ロールが付与されている必要があります。
注意:
セキュリティ上の理由で、FTPはデフォルトで無効になっています。IETF FTPプロトコルの仕様ではパスワードをクリアテキストで送信することが要求されているためです。無効化は、FTPサーバーのポートをゼロ(0)にすることで実現しています。FTPを有効にするには、ftp-port
パラメータを使用するFTPポート(2100
など)に設定します。
関連項目:
-
ASMCMD
cp
コマンドの詳細は、「cp」 -
/sys/asm
フォルダーの詳細は、Inside /sys/asm -
Oracle XML DBについては(XML DBプロトコル・サーバーのポート番号を構成する他の方法など)、『Oracle XML DB開発者ガイド』を参照してください。
-
DBMS_XDB
パッケージについては、『Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス』
/sys/asm内
Oracle ASM仮想フォルダは、XML DBのインストール時にデフォルトで作成されます。データベースがOracle ASMを使用するよう構成されていない場合は、フォルダは空で、フォルダに関する操作は許可されません。
Oracle ASM仮想フォルダには、Oracle ASM完全修飾ファイル名の構造によって定義された階層に従っているフォルダとサブフォルダが含まれます。図5-1に、この階層の例を示します。簡単にするために、エイリアス用に作成されるディレクトリは除外されています。
/sys/asm
フォルダには、マウントされたディスク・グループごとに1つのサブフォルダが含まれ、各ディスク・グループ・フォルダには、そのディスク・グループを使用するデータベースごとに1つのサブフォルダが含まれます。ディスク・グループ・フォルダには、管理者が作成したエイリアスに対応するファイルとフォルダが含まれていることもあります。さらにこの階層では、データベース・フォルダにファイル・タイプ・フォルダが含まれ、ファイル・タイプ・フォルダにOracle ASMファイルが含まれています。
/sys/asm
に関する使用上の制限事項を次に示します。
-
DBMS_XDB.LINK
などのAPIで既存のOracle ASMファイルまたはディレクトリに対するハード・リンクを作成することはできません。 -
Oracle ASMファイルを別のディスク・グループやOracle ASMの外部のディレクトリに名前変更(移動)することはできません。
ディスク・グループの名前を格納するためにディレクトリ/sys/asm
を使用できます。このディレクトリにその他のファイルを格納することはできません。/sys/asm
の下にあるディスク・グループ・ディレクトリ(/sys/asm/DATA
など)内で、これらのサブディレクトリにデータベース・ファイルのみを格納できます。これらのディレクトリにデータベース・ファイル以外のファイルを格納しようとすると、Oracle ASMで拒否されます。
Oracle ASM用のDBMS_FILE転送ユーティリティの使用
DBMS_FILE_TRANSFER
パッケージには、データベース内でOracle ASMファイルをコピーしたり、Oracle ASMを使用するデータベース間でバイナリ・ファイルを転送したりするためのプロシージャが用意されています。DBMS_FILE_TRANSFER
パッケージには次のプロシージャがあります。
-
COPY_FILE
: ソース・ディレクトリからファイルを読み取り、宛先ディレクトリにファイルのコピーを作成します。ソース・ディレクトリと宛先ディレクトリはどちらもローカル・ファイルシステムまたはOracle ASMディスク・グループ内に含めることができます。また、このプロシージャを使用して、ローカル・ファイルシステムとOracle ASMディスク・グループ間でコピーすることができます。コピー操作は両方向で有効です。 -
GET_FILE
: リモート・データベースに接続してリモート・ファイルを読み取り、ローカル・ファイルシステムまたはOracle ASMディスク・グループにファイルのコピーを作成します。 -
PUT_FILE
: ローカル・ファイルまたはOracle ASMディスク・グループを読み取り、リモート・データベースに接続してリモート・ファイルシステムにファイルのコピーを作成します。
関連項目:
DBMS_FILE_TRANSFER
パッケージについては、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
ディスク・グループ・テンプレートの管理
テンプレートは、Oracle ASMディスク・グループで作成されるファイルの属性を設定するのに使用します。
ファイルが作成されると、明示的に名前が付けられたテンプレートや、ファイル・タイプのデフォルトのテンプレートであるシステム・テンプレートに基づいて、冗長性属性およびストライプ化属性が設定されます。
ディスク・グループが作成されると、Oracle ASMによりこのディスク・グループ用のデフォルトのテンプレート・セットが作成されます。このセットは、Oracle ASMでサポートされているファイル・タイプ(データファイル、制御ファイル、REDOログ・ファイルなど)ごとに1つのテンプレートで構成されています。たとえば、ONLINELOG
という名前のテンプレートは、Oracle ASMディスクに書き込まれるすべてのREDOログ・ファイルに対してデフォルトのファイルの冗長性属性およびストライプ化属性を指定します。デフォルトのテンプレート設定は、ディスク・グループのタイプに応じて異なります。標準冗長性のディスク・グループ用として、データファイルのデフォルトのテンプレートに双方向ミラー化が設定されますが、これに対応する高冗長性のディスク・グループとしては、デフォルトのテンプレートに3方向ミラー化が設定されます。これらのデフォルトのテンプレートは変更できます。
たとえば、標準冗長性のディスク・グループにおけるオンラインREDOログ・ファイル(ONLINELOG
テンプレート)のデフォルトの冗長性は、MIRROR
です。つまり、例4-1では、REDOログ・ファイル・エクステントのコピーの1つが障害グループcontroller1
のディスクに書き込まれる場合、そのファイル・エクステントのミラー化されたコピーが障害グループcontroller2
のディスクに書き込まれます。標準冗長性のディスク・グループのデフォルトのミラー化をサポートするには、少なくとも2つの障害グループを定義する必要があります。
表5-6は、対応するファイルに関連付けられたデフォルトのテンプレートおよび属性のリストです。この表に示すように、デフォルトのテンプレートごとの冗長性の初期値は、テンプレートが属しているディスク・グループのタイプによって決まります。
ALTER DISKGROUP
SQL文の句を使用すると、ディスク・グループへの新しいテンプレートの追加、既存のテンプレートの変更、またはテンプレートの削除が可能です。テンプレートを追加するのは、独自の要件を満たす属性の組合せを正しく作成するためです。これにより、ファイルの作成時にテンプレート名を参照し、ファイル・タイプではなく個別ファイルに基づいて目的の属性を割り当てることができるようになります。
この項では、ディスク・グループのテンプレートの管理方法について説明します。内容は次のとおりです。
関連項目:
-
ALTER
DISKGROUP
文の詳細は、『Oracle Database SQL言語リファレンス』 -
Oracle ASMインスタンスで認識されているすべてのテンプレートの一覧が表示される
V$ASM_TEMPLATE
ビューの詳細は、Oracle Database Reference
テンプレート属性
表5-4に、使用可能なストライプ化属性値および割当て単位のサイズ・チャンクを示します。これらの値は、V$ASM_TEMPLATE
のSTRIPE
列に対応します。
表5-4 Oracle ASMテンプレートで使用可能なストライプ化属性値
ストライプ化属性値 | 説明 |
---|---|
|
128KBのチャンクでのストライプ化 |
|
1MBのチャンクでのストライプ化 |
表5-5に、Oracle ASMテンプレートで使用可能な冗長性値を示します。これらの値は、V$ASM_TEMPLATE
のREDUND
列に対応します。
表5-5 Oracle ASMテンプレートで使用可能な冗長性属性値
冗長性属性値 | 標準冗長性のディスク・グループでのミラー化 | 高冗長性のディスク・グループでのミラー化 | 外部冗長性のディスク・グループでのミラー化 |
---|---|---|---|
|
双方向ミラー化 |
3方向ミラー化 |
(使用不可) |
|
3方向ミラー化 |
3方向ミラー化 |
(使用不可) |
|
ミラー化なし |
(使用不可) |
ミラー化なし |
表5-6に、一部のデフォルト・テンプレートの初期属性設定を示します。標準冗長性、高冗長性、外部冗長性のディスク・グループについてのミラー化の列に対応するミラー化のタイプは、表5-5で指定されています。たとえば、表5-6では、高冗長性のディスク・グループのミラー化の列はMIRROR
となっています。表5-5での高冗長性のディスク・グループのMIRROR
値は、3方向
ミラー化
に対応しています。
表5-6 Oracle ASMのシステム・デフォルト・テンプレート属性設定
テンプレート名 | ファイルのストライプ化 | 標準冗長性のディスク・グループでのミラー化 | 高冗長性のディスク・グループでのミラー化 | 外部冗長性のディスク・グループでのミラー化 | プライマリ・リージョン | ミラー・リージョン |
---|---|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表5-7に、Oracle ASMテンプレートで使用可能なプライマリおよびミラー・リージョン値を示します。これらの値は、V$ASM_TEMPLATE
のPRIMARY_REGION
およびMIRROR_REGION
列に対応しています。
表5-7 Oracle ASMテンプレートで使用可能なプライマリおよびミラー・リージョン属性の値
プライマリおよびミラー・リージョン属性値 | 説明 |
---|---|
|
ディスク・ドライブ上の最も内側(スピンドルに最も近い)トラックを使用します。 |
|
より高速でバンド幅がより広い最も外側のトラックを使用します。 |
ディスク・グループへのテンプレートの追加
ディスク・グループにテンプレートを追加するには、ALTER DISKGROUP
文のADD TEMPLATE
句を使用します。
新しいテンプレートの名前が表5-6にない場合、データベース・ファイル・タイプのデフォルトのテンプレートとしては使用されません。そのテンプレートを使用するには、ファイルの作成時にその名前を参照する必要があります。
ディスク・グループにテンプレートを追加する場合、属性はオプションです。冗長性属性を指定しない場合、この値のデフォルト設定は、標準冗長性のディスク・グループの場合はMIRROR
、高冗長性のディスク・グループの場合はHIGH
、外部冗長性のディスク・グループの場合はUNPROTECTED
になります。ストライプ化属性を指定しない場合、この値はCOARSE
にデフォルト設定されます。プライマリ・リージョンまたはミラー・リージョンの属性値を指定しない場合、その値はそれぞれCOLD
とMIRRORCOLD
にデフォルト設定されます。
例5-14では、標準冗長性のディスク・グループdata
用にreliable
という名前の新しいテンプレートを作成します。
例5-15では、ファイルをUNPROTECTED
(ミラー化しない)に指定するunreliable
という名前の新しいテンプレートを作成します。
注意:
Oracleでは、ハードウェアのミラー化を実装していないかぎり、保護されていないファイルは使用しないでください。前述の例は、テンプレートの属性の設定方法を詳細に説明するために示したものにすぎません。
例5-14 ディスク・グループへの高冗長性のテンプレートの追加
ALTER DISKGROUP data ADD TEMPLATE reliable ATTRIBUTES (HIGH FINE);
例5-15 ディスク・グループへの外部冗長性のテンプレートの追加
ALTER DISKGROUP data ADD TEMPLATE unreliable ATTRIBUTES (UNPROTECTED);
関連項目:
ALTER DISKGROUP...ADD TEMPLATE
コマンドの詳細は、『Oracle Database SQL言語リファレンス』
ディスク・グループ・テンプレートの変更
ALTER DISKGROUP
文のMODIFY TEMPLATE
句を使用すると、既存のシステム・デフォルトのディスク・グループ・テンプレートやユーザー定義のディスク・グループ・テンプレートの属性指定を変更できます。変更されるのは、指定したテンプレートの属性のみです。指定していないプロパティは現行の値が維持されます。既存のテンプレートを変更すると、このテンプレートによって作成される新しいファイルにのみ属性の変更が適用されます。既存のファイルの属性は保持されます。
例5-16では、ディスク・グループdata
のreliable
テンプレートのストライプ化属性指定を変更します。
例5-16 ディスク・グループ・テンプレートの変更
ALTER DISKGROUP data MODIFY TEMPLATE reliable ATTRIBUTES (COARSE);
ディスク・グループからのテンプレートの削除
ALTER DISKGROUP
文のDROP TEMPLATE
句を使用して、ディスク・グループから1つ以上のテンプレートを削除します。削除できるのはユーザー定義のテンプレートのみです。システム・デフォルトのテンプレートは削除できません。
例5-17では、前に作成したテンプレートunreliable
をdata
から削除します。
例5-17 ディスク・グループからのテンプレートの削除
ALTER DISKGROUP data DROP TEMPLATE unreliable;
Oracle ASMでの表領域の作成: テンプレートによる属性の指定
SQL ALTER
SYSTEM
文とCREATE
TABLESPACE
文を使用して、表領域を作成します。この表領域では、ユーザー定義のテンプレートを使用してデータファイルの属性を指定します。
例5-18では、テンプレート(mytemplate
)が定義されていることを前提としています。
例5-18 ユーザー定義のテンプレートを使用した属性の指定
ALTER SYSTEM SET DB_CREATE_FILE_DEST = '+data(mytemplate)'; CREATE TABLESPACE mytblspace;