DBMS_STORAGE_MAP
パッケージを使用すると、Oracleバックグラウンド・プロセスのFMONと通信して、マッピング・ビューを移入するマッピング操作を起動できます。FMONは、オペレーティング・システムやストレージ・システムのベンダーが供給するマッピング・ライブラリと通信します。
この章では、次の項目について説明します。
次に、DBMS_STORAGE_MAP
APIを理解する上で役に立つ用語と解説を示します。
マッピング・ライブラリ
マッピング・ライブラリは、I/O処理スタック要素のコンポーネントのマッピングに役立ちます。I/O処理コンポーネントの例には、ファイル、論理ボリュームおよびストレージ・アレイI/Oターゲットなどがあります。マッピング・ライブラリは、filemap.ora
で識別されます。
マッピング・ファイル
マッピング・ファイルは、ファイルを記述するマッピング構造です。ファイル・サイズ、ファイルを構成するエクステント数、ファイル・タイプなどの一連の属性を提供します。
マッピング要素とマッピング副要素
マッピング要素は、I/Oスタック内の記憶域コンポーネントを示す抽象的なマッピング構造です。 要素の例には、その構造がマッピングの基本要素である、ミラー化、ストライプ化、パーティション、RAID5、連結要素およびディスクなどがあります。マッピング副要素は、I/Oマッピング・スタック内の1つの要素と次の要素との間のリンクを示します。
マッピング・ファイル・エクステント
マッピング・ファイル・エクステントは、1つの要素に常駐する連続的なブロックの集合を示します。これには、デバイス・オフセット、エクステント・サイズ、ファイル・オフセット、タイプ(データまたはパリティ)およびエクステントが常駐する要素の名前が含まれます。RAWデバイスまたはRAWボリュームの場合、ファイルは1つのファイル・エクステント・コンポーネントのみで構成されます。マッピング・ファイル・エクステントは、Oracleエクステントとは異なります。
関連項目:
|
MAP_ELEMENT
、MAP_FILE
およびMAP_ALL
の場合: 構成IDがサポートされている場合は、情報のマッピングがすでに存在するときにこれらのプロシージャを起動すると、マッピングがリフレッシュされます。構成情報IDがサポートされていない場合は、これらのプロシージャの再起動によって、マッピングが再作成されます。
関連項目: 構成ID、変更される要素またはファイルの属性については、『Oracle Database管理者ガイド』を参照してください。 |
表128-1 DBMS_STORAGE_MAPパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
|
インスタンスの共有メモリー内にあるマッピング情報をすべて削除します。 |
|
|
|
|
|
インスタンスの共有メモリー内にあるマッピング情報をロックします。 |
|
すべてのタイプのOracleファイルに関する完全なマッピング情報を作成します(アーカイブ・ログを除く)。これには、すべての有向非巡回グラフ(DAG)要素が含まれます。 |
|
|
|
|
|
オブジェクト名、所有者およびタイプで識別されるOracleオブジェクトのマッピング情報を作成します。 |
|
データ・ディクショナリからインスタンスの共有メモリーに、完全なマッピング情報をロードします。 |
|
データ・ディクショナリへの完全なマッピングの再生成に必要な情報を保存します。 |
|
インスタンスの共有メモリー内にあるマッピング情報のロックを解除します。 |
このプロシージャは、インスタンスの共有メモリー内にあるマッピング情報をすべて削除します。
構文
DBMS_STORAGE_MAP.DROP_ALL( dictionary_update IN BOOLEAN DEFAULT TRUE);
パラメータ
表128-2 DROP_ALLプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
このプロシージャは、elemname
によって定義された要素のマッピング情報を削除します。
構文
DBMS_STORAGE_MAP.DROP_ELEMENT( elemname IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
パラメータ
表128-3 DROP_ELEMENTプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
マッピング情報を削除する要素。 |
|
|
|
|
このプロシージャは、filename
によって定義されたマッピング情報を削除します。
構文
DBMS_STORAGE_MAP.DROP_FILE( filename IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
表128-4 DROP_FILEプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
マッピング情報を削除するファイル。 |
|
|
|
|
このプロシージャは、インスタンスの共有メモリー内にあるマッピング情報をロックします。 V$MAP表の一貫したスナップショットが必要な場合に便利です。 マッピング情報をロックしないと、V$MAP_ELEMENT
やV$MAP_SUBELEMENT
などの一貫性が失われる可能性があります。
構文
DBMS_STORAGE_MAP.LOCK_MAP;
このプロシージャは、すべてのタイプのOracleファイルに関する完全なマッピング情報を作成します(アーカイブ・ログを除く)。これには、すべての有向非巡回グラフ(DAG)要素が含まれます。このプロシージャは、すべてのマッピング・ライブラリを明示的に同期化するため、最新のマッピング情報を取得します。
構文
DBMS_STORAGE_MAP.MAP_ALL( max_num_fileext IN NUMBER DEFAULT 100, dictionary_update IN BOOLEAN DEFAULT TRUE);
パラメータ
表128-5 MAP_ALLプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
マップするファイル・エクステントの最大数を定義します。この指定によって、ファイル・エクステントのマッピング時に使用するメモリー量が制限されます。デフォルト値は |
|
|
使用上の注意
MAP_ALL
は、コールド・スタートの際に明示的にコールする必要があります。
このプロシージャは、elemname
で識別される要素のマッピング情報を作成します。明示的な同期化を必要とするライブラリが、マップする要素またはそのI/Oスタック内のいずれか1つの要素を所有している場合(cascade
がTRUE
の場合)は、最新のマッピング情報を取得できない可能性があります。
構文
DBMS_STORAGE_MAP.MAP_ELEMENT( elemname IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
パラメータ
表128-6 MAP_ELEMENTプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
マッピング情報を作成する要素。 |
|
|
|
|
このプロシージャは、filename
で識別されるファイルのマッピング情報を作成します。このプロシージャは、ある特定のファイルのマッピングが変更された場合に使用します。Oracle Databaseサーバーでは完全なマッピングを再作成する必要はありません。
構文
DBMS_STORAGE_MAP.MAP_FILE( filename IN VARCHAR2, filetype IN VARCHAR2, cascade IN BOOLEAN, max_num_fileextent IN NUMBER DEFAULT 100, dictionary_update IN BOOLEAN DEFAULT TRUE);
パラメータ
表128-7 MAP_FILEプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
マッピング情報を作成するファイル。 |
|
マップするファイルのタイプ。" |
|
記憶域の再構成が発生する場合にのみ、
|
|
マップするファイル・エクステントの最大数を定義します。この指定によって、ファイル・エクステントのマッピング時に使用するメモリー量が制限されます。デフォルト値は |
|
|
使用上の注意
このプロシージャは、明示的な同期化を必要とするライブラリが、マップするファイルまたはそのI/Oスタック内のいずれか1つの要素を所有している場合(cascade
がTRUE
の場合)は、最新のマッピング情報を取得できない可能性があります。
このプロシージャは、オブジェクト名、所有者およびタイプで識別されるOracleオブジェクトのマッピング情報を作成します。
構文
DBMS_STORAGE_MAP.MAP_OBJECT( objname IN VARCHAR2, owner IN VARCHAR2, objtype IN VARCHAR2);
パラメータ
このプロシージャは、データ・ディクショナリからインスタンスの共有メモリーに、完全なマッピング情報をロードします。RESTORE
を起動できるのは、SAVE
操作を実行した後のみです。RESTORE
は、ウォーム・スタートの際に明示的にコールする必要があります。
構文
DBMS_STORAGE_MAP.RESTORE;
このプロシージャは、データ・ディクショナリへの完全なマッピングの再生成に必要な情報を保存します。
構文
DBMS_STORAGE_MAP.SAVE;
このプロシージャは、インスタンスの共有メモリー内にあるマッピング情報のロックを解除します。
構文
DBMS_STORAGE_MAP.UNLOCK_MAP;