この章では、自動ストレージ管理(ASM)のストレージ・オプションを使用する場合のファイル管理方法について説明します。この付録の内容は次のとおりです。
ASMでは、データベースに必要なほとんどのファイル・タイプがサポートされます。ただし、ASMディスク・グループに格納することができない管理ファイル・タイプもあります。これらのファイルとしては、トレース・ファイル、監査ファイル、アラート・ログ、エクスポート・ファイル、tarファイルおよびコア・ファイルがあります。
ファイル・タイプ、サポートの有無、およびファイル作成用の属性を提供するシステム・デフォルト・テンプレートの一覧を表5-1に示します。表に示したファイル・タイプの一部は特定の製品または機能に関連しており、このマニュアルでは説明していません。
表5-1 自動ストレージ管理によってサポートされるファイル・タイプ
ファイル・タイプ | サポート対象 | デフォルト・テンプレート |
---|---|---|
制御ファイル |
○ |
|
データファイル |
○ |
|
REDOログ・ファイル |
○ |
|
アーカイブ・ログ・ファイル |
○ |
|
トレース・ファイル |
× |
N/A |
一時ファイル |
○ |
|
データファイル・バックアップ・ピース |
○ |
|
データファイル増分バックアップ・ピース |
○ |
|
アーカイブ・ログ・バックアップ・ピース |
○ |
|
データファイル・コピー |
○ |
|
永続初期化パラメータ・ファイル(SPFILE) |
○ |
|
障害時リカバリ構成 |
○ |
|
フラッシュバック・ログ |
○ |
|
変更トラッキング・ファイル |
○ |
|
データ・ポンプ・ダンプセット |
○ |
|
自動生成制御ファイル・バックアップ |
○ |
|
クロスプラットフォーム・トランスポータブル・データファイル |
○ |
|
オペレーティング・システム・ファイル |
× |
N/A |
ASMで作成されたすべてのファイルには、システム生成のファイル名(完全修飾されたファイル名)が付けられます。完全修飾ファイル名は、ASMファイル・システムにおける完全なパス名を表します。完全修飾ファイル名の例を次に示します。
+dgroup2/sample/controlfile/Current.256.541956473
ユーザーは、完全修飾ファイル名を使用してASMファイルを参照(読取りまたは取得)できます。また、他の短縮ファイル名形式(「エイリアスASMファイル名」で説明するエイリアスASMファイル名など)を使用してASMファイルを参照することもできます。
ASMでは、ファイル作成のリクエスト時に完全修飾ファイル名が生成されます。作成リクエストでは完全修飾ファイル名は指定されません(指定できません)。かわりに、より簡単な構文を使用してファイルが指定されます(エイリアスやディスク・グループ名など)。ASMは、そのファイルを作成し、ファイル・タイプに従って正しいASMパスに配置してから、適切な完全修飾ファイル名を割り当てます。作成リクエストでエイリアスを指定した場合は、完全修飾ファイル名を参照するようにエイリアスも作成されます。
ASMファイル作成リクエストは、単一ファイル作成リクエストまたは複数ファイル作成リクエストのいずれかです。
注意: 生成された名前は、Oracleファイル名を表示するデータベース・ビュー(V$DATAFILE やV$LOGFILE など)で見つけることができます。SQL文でASMファイルを参照する必要がある場合は、この名前を使用するか、この名前の短縮形式を使用できます。他のOracleデータベース・ファイル名と同様に、ASMファイル名は制御ファイルおよびRMANカタログに保存されます。 |
この項の内容は次のとおりです。
表5-2では、各ファイル名形式の有効なコンテキスト、その形式をファイル作成に使用できるかどうか、および作成されるファイルがOracle Managed Files(OMF)かどうかを示します。
表5-2 ASMファイル名形式の有効なコンテキスト
ファイル名の形式 | 有効なコンテキスト | OMF | ||
---|---|---|---|---|
参照 | 単一ファイル作成 | 複数ファイル作成 | OMFとして作成される | |
完全修飾ファイル名 |
○ |
× |
× |
|
数値ファイル名 |
○ |
× |
× |
|
エイリアス・ファイル名 |
○ |
○ |
× |
× |
テンプレート付きエイリアス・ファイル名 |
× |
○ |
× |
× |
不完全なファイル名 |
× |
○ |
○ |
○ |
テンプレート付きの不完全なファイル名 |
× |
○ |
○ |
○ |
単一ファイル作成リクエストは、単一ファイル(データファイルや制御ファイルなど)の作成リクエストです。このタイプのリクエストにおけるASMファイル名の形式は、エイリアス(たとえば、+dgroup2/control/ctl.f
)、またはプラス記号を前に付けたディスク・グループ名です。CREATE
TABLESPACE
やCREATE
CONTROLFILE
などの文でファイル名が必要になる場合は、このエイリアスまたはディスク・グループ名を使用します。
注意: ファイル名では、'/ 'と'\ 'は置換え可能です。ファイル名の大文字と小文字は区別されませんが、保持されます。 |
複数ファイル作成リクエストは、ASMファイルの作成のために複数回行うことができるリクエストです。たとえば、DB_CREATE_FILE_DEST
初期化パラメータに値を割り当てた場合は、CREATE TABLESPACE
文を(ファイル名の指定なしに)複数回発行できます。そのたびに、ASMでは異なる一意のデータファイル名が作成されます。
このタイプのリクエストで使用するASMファイル名の1つの形式は不完全なファイル名です。それは、プラス記号が前に付いたディスク・グループ名です。この場合は、DB_CREATE_FILE_DEST
を不完全なファイル名(たとえば、+dgroup2
)に設定すると、DB_CREATE_FILE_DEST
にデータベース・ファイルを作成する必要があるコマンドが実行されるたびに、指定されたディスク・グループにファイルが作成され、一意の完全修飾名が割り当てられます。他の*_DEST
初期化パラメータでは、不完全なファイル名を使用できます。
この形式のASMファイル名は、既存のASMファイルを参照する場合に使用できます。これは、ASMファイルの作成時にASMで常に自動的に生成されるファイル名です。
完全修飾ファイル名の形式は次のとおりです。
+group/dbname/file_type/file_type_tag.file.incarnation
説明:
+group
は、プラス記号が前に付いたディスク・グループ名です。
プラス記号(+
)は、UNIXおよびLinuxコンピュータにおけるスラッシュ(/
)と同様に、ASMファイル・システムのルート・ディレクトリとみなすことができます。
dbname
は、ファイルが属するデータベースのDB_UNIQUE_NAME
です。
file_type
はOracleファイル・タイプであり、表5-3に示したファイル・タイプのいずれかにすることができます。
file_type_tag
はファイルに関するタイプ固有の情報であり、表5-3に示したタグのいずれかにすることができます。
file.incarnation
はファイル/インカネーションのペアであり、一意性の保証に使用されます。
完全修飾ASMファイル名の例を次に示します。
+dgroup2/sample/controlfile/Current.256.541956473
表5-3 Oracleファイル・タイプと自動ストレージ管理ファイル・タイプ・タグ
自動ストレージ管理のfile_type | 説明 | 自動ストレージ管理のfile_type_tag | コメント |
---|---|---|---|
|
制御ファイルおよびバックアップ制御ファイル |
現行 バックアップ |
-- |
|
データファイルおよびデータファイル・コピー |
|
ファイルが追加される表領域。 |
|
オンライン・ログ |
|
-- |
|
アーカイブ・ログ |
|
-- |
|
一時ファイル |
|
ファイルが追加される表領域。 |
|
データファイルおよびアーカイブ・ログ・バックアップ・ピース、データファイル増分バックアップ・ピース |
|
|
|
永続パラメータ・ファイル |
|
|
|
Data Guard構成ファイル |
|
Data Guardでは、サービス・プロバイダ名が設定されていれば、その名前の使用が試されます。それ以外の場合は、タグはデフォルトで |
|
フラッシュバック・ログ |
|
-- |
|
ブロック変更トラッキング・データ |
|
増分バックアップ時に使用されます。 |
|
データ・ポンプ・ダンプセット |
|
ダンプ・セット・ファイルでは、ユーザー名、ダンプ・セットを作成したジョブ番号、およびファイル番号が、タグの一部としてエンコードされます。 |
|
データファイル変換 |
|
-- |
|
自動バックアップ・ファイル |
|
|
数値ASMファイル名は、既存のASMファイルを参照する場合に使用できます。このファイル名は、完全修飾ASMファイル名から導出され、次の形式を取ります。
+group.file.incarnation
数値ASMファイル名は、既存のファイル名を必要とする任意のインタフェースで使用できます。
数値ASMファイル名の例を次に示します。
+dgroup2.257.541956473
エイリアスASMファイル名(エイリアスとも呼ばれる)は、既存のASMファイルを参照する場合や新規ASMファイルを作成する場合に使用できます。エイリアス名は、プラス記号が前に付いたディスク・グループ名で始まります。その後には、任意の名前文字列を指定します。エイリアス・ファイル名は、階層ディレクトリ構造を使用して実装され、名前の構成要素はスラッシュ(/)または円記号(\)で区切られます。エイリアスは、システム生成またはユーザー作成のASMディレクトリで作成できます。ただし、ルート・レベル(+
)ではエイリアスを作成できません。
エイリアス・ファイル名を使用してASMファイルを作成すると、そのファイルは完全修飾ファイル名で作成され、さらにエイリアス・ファイル名も作成されます。これにより、どちらの名前でもファイルにアクセスできるようになります。
エイリアスASMファイル名はドット区切りの数値ペアで終わっていないため、完全修飾ファイル名や数値ファイル名とは区別されます。ドット区切りの数値ペアで終わるエイリアスを作成しようとすると、エラーが発生します。ASMエイリアス・ファイル名の例を次に示します。
+dgroup1/myfiles/control_file1
+dgroup2/mydir/second.dbf
Oracle Databaseは、エイリアスを使用してデータベース・ファイルを作成した場合にのみ、エイリアス・ファイル名でデータベース・ファイルを参照します。エイリアスを使用せずにデータベース・ファイルを作成し、あとでエイリアスを追加した場合は、データベースは完全修飾ファイル名でファイルを参照します。データベースによるエイリアス・ファイル名の使用方法の例を次に示します。
エイリアス・ファイル名はV$ビューに表示されます。たとえば、表領域を作成し、データファイルのエイリアス・ファイル名を使用した場合は、V$DATAFILE
ビューにエイリアス・ファイル名が表示されます。
制御ファイルがデータファイルとオンラインREDOログ・ファイルを指定する場合、その制御ファイルではエイリアス・ファイル名を使用できます。
CONTROL_FILES
初期化パラメータでは、制御ファイルのエイリアス・ファイル名を使用できます。Database Configuration Assistant(DBCA)は、エイリアス・ファイル名を使用して制御ファイルを作成します。
注意: エイリアス・ファイル名を使用して作成されたファイルは、Oracle Managed Filesとはみなされず、不要になった場合は手動による削除が必要になることがあります。 |
次の文では、エイリアス名を持つデータファイルと、ユーザー定義テンプレートmy_undo_template
で設定される属性を使用してUNDO表領域が作成されます。この例は、エイリアス名を含めるディレクトリがdgroup3
ディスク・グループに作成されていること、およびユーザー定義テンプレートが存在することを前提としています。データファイルの作成にはエイリアスが使用されるため、そのファイルはOracle Managed Files(OMF)ファイルではなく、表領域を削除しても自動的に削除されません。
CREATE UNDO TABLESPACE myundo DATAFILE '+dgroup3(my_undo_template)/myfiles/my_undo_ts' SIZE 200M;
次の文では、表領域の削除後に手動でファイルが削除されます。
ALTER DISKGROUP dgroup3 DROP FILE '+dgroup3/myfiles/my_undo_ts';
テンプレート付きのエイリアスASMファイル名は、ASMファイル作成操作にのみ使用されます。このファイル名の形式は次のとおりです。
+dgroup(template_name)/alias
テンプレート付きのエイリアス・ファイル名は、エイリアス・ファイル名と同じように機能します。唯一の違いは、テンプレート付きのエイリアス・ファイル名で作成されたファイルは、名前付きのテンプレートによって指定されたミラー化およびストライプ化の属性を受け取るということです。テンプレートは、ファイルが作成されるディスク・グループに属している必要があります。
ASMテンプレートの作成およびメンテナンスについては、「ディスク・グループ・テンプレートの管理」を参照してください。
テンプレート付きエイリアスASMファイル名の例を次に示します。
+dgroup1(my_template)/config1
この例のようにテンプレート名を明示的に指定すると、作成されるファイルのタイプに対するシステム・デフォルト・テンプレートは無効になります。
注意: テンプレート付きエイリアス・ファイル名を使用して作成されたファイルは、Oracle Managed Filesとはみなされず、不要になった場合は手動による削除が必要になることがあります。 |
不完全なASMファイル名は、ファイル作成操作にのみ使用され、単一ファイル作成と複数ファイル作成の両方に使用されます。このファイル名は、ディスク・グループ名のみで構成されます。ASMでは、システム・デフォルト・テンプレートを使用してASMファイルのミラー化およびストライプ化属性が決定されます。使用されるシステム・テンプレートは、作成されるファイル・タイプによって決まります。たとえば、表領域のデータファイルを作成する場合は、datafile
テンプレートが使用されます。
不完全なASMファイル名の使用例としては、たとえばDB_CREATE_FILE_DEST
初期化パラメータを次のように設定します。
+dgroup1
この設定を使用すると、表領域を作成するたびにデータファイルがdgroup1
ディスク・グループに作成され、各データファイルには異なる完全修飾名が割り当てられます。詳細は、「デフォルト・ディスク・グループ指定を使用したASMファイルの作成」を参照してください。
テンプレート付きの不完全なASMファイル名は、ファイル作成操作にのみ使用され、単一ファイル作成と複数ファイル作成の両方に使用されます。このファイル名は、ディスク・グループ名とそれに続くカッコで囲まれたテンプレート名で構成されます。ファイル名で明示的にテンプレートを指定すると、そのファイル・タイプのデフォルト・テンプレートではなく指定されたテンプレートを使用して、ファイルのミラー化およびストライプ化属性が決定されます。
テンプレート付きの不完全なASMファイル名の使用例としては、たとえばDB_CREATE_FILE_DEST
初期化パラメータを次のように設定します。
+dgroup1(my_template)
エイリアスを使用して作成していないかぎり、ASMファイルはOracle Managed Fileです。OMFは、不要になると自動的に削除されます。ASMファイルは、作成に失敗した場合に削除されます。
この項の内容は次のとおりです。
オペレーティング・システム・ファイルに対してOracle Managed Files機能を使用すると、データファイル、一時ファイル、REDOログ・ファイルおよび制御ファイルのデフォルトの作成場所としてディレクトリを指定できます。ASMに対してOracle Managed Files機能を使用すると、これらのファイルおよび他のタイプのファイル(アーカイブ・ログ・ファイルなど)のデフォルトの作成場所として、不完全なASMファイル名の形式でディスク・グループを指定できます。オペレーティング・システム・ファイルの場合と同様に、デフォルト・ディスク・グループの名前は初期化パラメータに格納され、ファイル作成時にファイル指定(たとえば、DATAFILE
句)が明示的に行われていない場合は必ず使用されます。
表5-4の初期化パラメータは、複数ファイル作成コンテキスト形式のASMファイル名を宛先として受け入れます。
表5-4 マルチファイルASMファイル名初期化パラメータ
初期化パラメータ | 説明 |
---|---|
|
次のファイルを作成するデフォルト・ディスク・グループの場所を指定します。
|
|
次のファイルを作成するデフォルト・ディスク・グループの場所を指定します。
|
|
このパラメータが指定されていて、
ローカル・アーカイブの宛先が指定されていない場合は、このパラメータにより、 |
|
制御ファイルを作成するディスク・グループを指定します。 |
表5-5の初期化パラメータは、複数ファイル作成コンテキスト形式のASMファイル名とASMディレクトリ名を宛先として受け入れます。
表5-5 マルチファイルASMファイル名およびディレクトリ名の初期化パラメータ
初期化パラメータ | 説明 |
---|---|
|
REDOログ・ファイルのアーカイブ先としてデフォルト・ディスク・グループまたはASMディレクトリを指定します。 |
|
REDOログ・ファイルのアーカイブ先としてデフォルト・ディスク・グループまたはASMディレクトリを指定するためのオプションのパラメータ。1つの宛先のみを指定する場合に使用します。 |
|
管理リカバリ・モードのスタンバイ・データベースにのみ関連します。このパラメータでは、プライマリ・データベースから受け取るアーカイブ・ログの場所となるデフォルト・ディスク・グループまたはASMディレクトリが指定されます。このマニュアルでは説明していません。このパラメータは使用できなくなりました。『Oracle Data Guard概要および管理』を参照してください。 |
次の例では、ASMファイル(この場合はデータファイル)がどのようにデフォルト・ディスク・グループに作成されるのかを示します。
ASMファイル名は、SQL文のファイル指定句で指定できます。初めてファイルを作成する場合は、ASMファイル名の作成用書式を使用します。ASMファイルがすでに存在する場合は、参照コンテキスト形式のファイル名を使用する必要があります。また、ファイルを再作成する場合は、REUSE
キーワードを追加する必要があります。その領域は新規ファイル用に再利用されます。たとえば、「ASMでの制御ファイルの作成」に記載されているように、制御ファイルを再作成する場合は、このような使用方法が可能です。
参照コンテキスト形式をREUSE
キーワードとともに使用し、ファイルが存在しない場合は、エラーが発生します。
システム・エラーの結果として部分的に作成されたファイルは、自動的に削除されます。
SQL文でASMファイル名を指定する例を次に示します。この場合、ASMファイル名はファイル作成コンテキストで使用されます。
CREATE TABLESPACE tspace2 DATAFILE '+dgroup2' SIZE 200M AUTOEXTEND ON;
表領域tspace2
が作成されます。この表領域は、ディスク・グループdgroup2
に含まれている200MBの1つのデータファイルで構成されます。データファイルは自動拡張可能に設定され、最大サイズの制限もありません。AUTOEXTEND
句を使用すると、このデフォルトを無効にすることができます。
エイリアス名(またはエイリアス)は、システム生成のファイル名を使用するのではなく、ASMファイルをより簡単に参照するための手段です。
データベース内でファイルを作成するときにファイルのエイリアスを作成したり、ALTER DISKGROUP
文のADD ALIAS
句を使用して既存のファイルにエイリアスを追加したりできます。エイリアスは、システム生成またはユーザー作成のASMディレクトリで作成できます。ただし、ルート・レベル(+
)ではエイリアスを作成できません。
ASMCMDを使用したエイリアスの作成の詳細は、「mkaliasコマンド」を参照してください。
この項の内容は次のとおりです。
ALTER DISKGROUP
文のADD ALIAS
句を使用して、ASMファイル名のエイリアス名を作成します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。
ALTER DISKGROUP
文のRENAME ALIAS
句を使用して、ASMファイル名のエイリアス名を変更します。新旧のエイリアス名は、エイリアス名の完全ディレクトリ・パスで構成されている必要があります。
ALTER DISKGROUP
文のDROP ALIAS
句を使用して、ASMファイル名のエイリアスを削除します。エイリアス名は、完全ディレクトリ・パスとエイリアス自体で構成されている必要があります。エイリアスが参照する基礎となるファイルは変更されません。
ALTER DISKGROUP
文のDROP FILE
句を使用して、ディスク・グループからASMファイルおよび関連するエイリアスを削除できます。削除するファイルを指定するには、完全修飾されたファイル名、数値ファイル名またはエイリアス名を使用する必要があります。エイリアスを削除しても、ファイル・システム上で基礎となるファイルは削除されません。
ファイルを削除する必要がある理由には、次のようなものがあります。
エイリアスを使用して作成されるファイルはOracle Managed Fileではありません。そのため、このファイルは自動的に削除されません。
データベースの特定の時間におけるリカバリにより、表領域が作成される前の時間にデータベースがリストアされる可能性があります。リストアによって表領域は削除されませんが、リストアされたデータベースでこの表領域(またはそのデータファイル)は参照されていません。このデータファイルは手動で削除できます。
ASMのファイルおよびディレクトリには、XML DBリポジトリ内の仮想フォルダからアクセスできます。仮想フォルダのリポジトリ・パスは/sys/asm
です。実際にはフォルダの内容はリポジトリ内に存在しないため、これは仮想のフォルダです。これらの内容は、通常のASMファイルおよびディレクトリとして存在します。/sys/asm
は、プログラム的なAPI(DBMS_XDB
パッケージなど)とXML DBプロトコル(FTPやHTTP/WebDAVなど)でASMファイルおよびディレクトリにアクセスして操作する手段を提供します。
この機能の一般的な用途としては、/sys/asm
をWebフォルダとしてグラフィカル・ユーザー・インタフェースに(WebDAVプロトコルで)表示し、次にデータ・ポンプ・ダンプセットをASMディスク・グループからオペレーティング・システムのファイル・システムにドラッグ・アンド・ドロップでコピーします。
SYS
以外のユーザーとしてログインする必要があります。また、XML DBプロトコルで/sys/asm
にアクセスするには、DBA
ロールが付与されている必要があります。
注意: 新規XML DBインストールの場合、FTPプロトコルは初期状態で無効になっています。これを有効にするには、FTPポートをゼロ以外の値に設定する必要があります。これを行う最も簡単な方法は、catxdbdbca.sql スクリプトを使用することです。このスクリプトは2つの引数を取ります。最初の引数はFTPポート番号、2番目の引数はHTTP/WebDAVポート番号です。次の例では、FTPポート番号を7787、HTTP/WebDAVポート番号を8080に設定しています。
もう1つの方法として、これらのポート番号はEnterprise Managerの「XDB構成」ページでも設定できます。 |
関連項目:
|
ASM仮想フォルダは、XML DBのインストール時にデフォルトで作成されます。+ASMを使用するようにデータベースを構成していない場合は、ASM仮想フォルダは空であり、このフォルダに対する操作は許可されません。
ASM仮想フォルダには、ASM完全修飾ファイル名の構造によって定義された階層に従っているフォルダとサブフォルダが含まれます。図5-1はこの階層を示しています。簡単にするために、エイリアス用に作成されるディレクトリは除外されています。
/sys/asm
フォルダには、マウントされたディスク・グループごとに1つのサブフォルダが含まれ、各ディスク・グループ・フォルダには、そのディスク・グループを使用するデータベースごとに1つのサブフォルダが含まれます。ディスク・グループ・フォルダには、管理者が作成したエイリアスに対応するファイルとフォルダが含まれていることもあります。さらにこの階層では、データベース・フォルダにファイル・タイプ・フォルダが含まれ、ファイル・タイプ・フォルダにASMファイルが含まれています。
/sys/asm
に関する使用上の制限事項を次に示します。
DBMS_XDB.LINKなどのAPIで既存のASMファイルまたはディレクトリに対するハード・リンクを作成することはできません。
ASMファイルを別のディスク・グループやASMの外部のディレクトリに名前変更(移動)することはできません。
ディスク・グループの名前を格納するためにディレクトリ/sys/asm
を使用できます。このディレクトリにその他のファイルを格納することはできません。/sys/asm
の下にあるディスク・グループ・ディレクトリ(/sys/asm/DATA
など)内で、これらのサブディレクトリにデータベース・ファイルのみを格納できます。これらのディレクトリにデータベース・ファイル以外のファイルを格納しようとすると、ASMで拒否されます。
次のFTPセッションの例では、ディスク・グループはDATA
およびRECOVERY
、データベース名はMFG
、dbs
はエイリアス用に作成されたディレクトリです。/sys/asm
内のファイルはすべてバイナリです。
ftp> open myhost 7777
ftp> user system
ftp> passwd dba
ftp> cd /sys/asm
ftp> ls
DATA
RECOVERY
ftp> cd DATA
ftp> ls
dbs
MFG
ftp> cd dbs
ftp> ls
t_dbl.f
t_axl.f
ftp> binary
ftp> get t_dbl.f t_axl.f
ftp> put t_db2.f
DBMS_FILE_TRANSFER
パッケージには、データベース内でASMファイルをコピーしたり、ASMを使用するデータベース間でバイナリ・ファイルを転送したりするための手順が用意されています。DBMS_FILE_TRANSFER
パッケージには次の手順があります。
COPY_FILE
: ソース・ディレクトリからファイルを読み取り、宛先ディレクトリにファイルのコピーを作成します。ソース・ディレクトリと宛先ディレクトリはどちらもローカル・ファイル・システムまたはASMディスク・グループ内に含めることができます。また、この手順を使用して、ローカル・ファイル・システムとASMディスク・グループ間でコピーすることができます。コピー操作は両方向で有効です。
GET_FILE
: リモート・データベースに接続してリモート・ファイルを読み取り、ローカル・ファイル・システムまたはASMディスク・グループにファイルのコピーを作成します。
PUT_FILE
: ローカル・ファイルまたはASMディスク・グループを読み取り、リモート・データベースに接続してリモート・ファイル・システムにファイルのコピーを作成します。
関連項目: DBMS_FILE_TRANSFER パッケージについては、『Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス』を参照してください。 |
ASMディスク・グループには、ASMファイルを格納するためのシステム生成の階層ディレクトリ構造があります。各ファイルに割り当てられるシステム生成のファイル名は、このディレクトリ階層内のパスを示します。次の例は、システム生成のファイル名を示しています。
+dgroup2/sample/CONTROLFILE/Current.256.541956473
プラス記号は、ASMファイル・システムのルートを示します。dgroup2
ディレクトリは、ディスク・グループdgroup2
内のすべてのファイルの親ディレクトリです。sample
ディレクトリはsample
データベース内のすべてのファイルの親ディレクトリで、CONTROLFILE
ディレクトリにはsample
データベースのすべての制御ファイルが含まれます。
この階層には、作成するエイリアスを格納するための独自のディレクトリを作成できます。このため、ASMファイル用としてわかりやすいエイリアス名の他に、これらの名前に対してもわかりやすいパスを使用できます。
この項では、ALTER DISKGROUP
文を使用してエイリアスのディレクトリ構造を作成する方法について説明します。また、ディレクトリ名の変更方法や、ディレクトリの削除方法についても説明します。この項の内容は次のとおりです。
ALTER DISKGROUP
文のADD DIRECTORY
句を使用して、ASMファイルのエイリアス名の階層ディレクトリ構造を作成します。スラッシュ文字(/)を使用して、ディレクトリ・パスのコンポーネントを区切ります。ディレクトリ・パスは、先頭にプラス記号(+)が付いたディスク・グループ名にする必要があり、その後に任意のサブディレクトリ名を指定できます。
ディレクトリ内でサブディレクトリまたはエイリアスを作成するには、その親ディレクトリが存在している必要があります。
次の文では、ディスク・グループdgroup1
の階層ディレクトリを作成します。このディレクトリには、+dgroup1/mydir/control_file1
などのエイリアス名を含めることができます。
ALTER DISKGROUP dgroup1 ADD DIRECTORY '+dgroup1/mydir';
+dgoup1/mydir
ディレクトリの下位にサブディレクトリがない場合、次の文は失敗します。
ALTER DISKGROUP dgroup1 ADD DIRECTORY '+dgroup1/mydir/first_dir/second_dir';
ALTER DISKGROUP
文のRENAME DIRECTORY
句を使用して、ディレクトリ名を変更できます。システム生成のディレクトリ(システム生成の名前が含まれるディレクトリ)は、名前を変更できません。
この項では、次のトピックに基づいてディスク・グループのテンプレートの管理方法について説明します。
テンプレートを使用して、ASMディスク・グループで作成されるファイルの冗長性(ミラー化)属性およびストライプ化属性を設定します。ファイルが作成されると、明示的に名前が付けられたテンプレートや、ファイル・タイプのデフォルトのテンプレートであるシステム・テンプレートに基づいて、冗長性属性およびストライプ化属性が設定されます。
ディスク・グループが作成されると、このディスク・グループ用のデフォルトのテンプレート・セットが作成されます。このセットは、ASMでサポートされているファイル・タイプ(データファイル、制御ファイル、REDOログ・ファイルなど)ごとに1つのテンプレートで構成されています。たとえば、ONLINELOG
という名前のテンプレートにより、ASMディスクに書き込まれるすべてのREDOログ・ファイルに対してデフォルトのファイルの冗長性属性およびストライプ化属性を指定します。デフォルトのテンプレート設定は、ディスク・グループのタイプによって決まります。標準冗長性のディスク・グループ用として、データファイルのデフォルトのテンプレートに双方向ミラー化が設定されますが、これに対応する高冗長性のディスク・グループとしては、デフォルトのテンプレートに3方向ミラー化が設定されます。これらのデフォルトのテンプレートは変更できます。
たとえば、標準冗長性のディスク・グループにおけるオンラインREDOログ・ファイル(ONLINELOG
テンプレート)のデフォルトの冗長性は、MIRROR
です。つまり、例4-1では、REDOログ・ファイル・エクステントのコピーの1つが障害グループcontroller1
のディスクに書き込まれる場合、そのファイル・エクステントのミラー化されたコピーが障害グループcontroller2
のディスクに書き込まれます。標準冗長性のディスク・グループのデフォルトのミラー化をサポートするには、少なくとも2つの障害グループを定義する必要があります。
表5-8は、対応するファイルに関連付けられたデフォルトのテンプレートおよび属性のリストです。この表に示すように、デフォルトのテンプレートごとの冗長性の初期値は、テンプレートが属しているディスク・グループのタイプによって決まります。
注意: テンプレートのストライプ化属性は、ディスク・グループのすべてのタイプに適用されます。これには、標準冗長性、高冗長性および外部冗長性のディスク・グループ・タイプが含まれます。ただし、テンプレートのミラー化属性は、標準冗長性のディスク・グループにのみ適用され、すべてのファイルが常に3方向でミラー化される高冗長性のディスク・グループでは無視されます。また、ASMによってミラー化されるファイルがない外部冗長性のディスク・グループでも無視されます。それでもなお、ディスク・グループの各タイプにはテンプレートの完全セットが割り当てられ、各テンプレートの冗長性値は、常にディスク・グループ・タイプに適したデフォルト値に設定されます。 |
ALTER DISKGROUP
文の句を使用すると、ディスク・グループへの新しいテンプレートの追加、既存のテンプレートの変更、またはテンプレートの削除が可能です。テンプレートを追加するのは、独自の要件を満たす属性の組合せを正しく作成するためです。これにより、ファイルの作成時にテンプレート名を参照し、ファイル・タイプではなく個別ファイルに基づいて目的の属性を割り当てることができるようになります。V$ASM_TEMPLATE
ビューには、ASMインスタンスで認識されているすべてのテンプレートがリストされます。
表5-6は使用可能なストライプ化属性値を示し、表5-7はASMテンプレートで使用可能な冗長性属性値を示しています。これらの値は、V$ASM_TEMPLATE
のSTRIPE
およびREDUND
列に対応しています。
表5-7 ASMテンプレートで使用可能な冗長性属性値
冗長性属性値 | 標準冗長性のディスク・グループでのミラー化 | 高冗長性のディスク・グループでのミラー化 | 外部冗長性のディスク・グループでのミラー化 |
---|---|---|---|
|
双方向ミラー化 |
3方向ミラー化 |
(使用不可) |
|
3方向ミラー化 |
3方向ミラー化 |
(使用不可) |
|
ミラー化なし |
(使用不可) |
ミラー化なし |
表5-8 ASMシステム・デフォルトのテンプレート属性設定
テンプレート名 | ストライプ化 | 標準冗長性のディスク・グループでのミラー化 | 高冗長性のディスク・グループでのミラー化 | 外部冗長性のディスク・グループでのミラー化 |
---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ディスク・グループにテンプレートを追加するには、ALTER DISKGROUP
文のADD TEMPLATE
句を使用します。テンプレートの名前、冗長性属性およびストライプ化属性を指定します。
注意: 新しいテンプレートの名前が表5-8にリストされている名前の1つではない場合、データベース・ファイル・タイプのデフォルトのテンプレートとしては使用されません。この名前を使用するには、ファイルの作成時にその名前を参照する必要があります。 |
テンプレートを追加するためのALTER DISKGROUP
コマンドの構文は、次のとおりです。
ALTER DISKGROUP disk_group_name ADD TEMPLATE template_name ATTRIBUTES ([{MIRROR|HIGH|UNPROTECTED}] [{FINE|COARSE}]);
属性のタイプは両方ともオプションです。冗長性属性を指定しない場合、この値のデフォルト設定は、標準冗長性のディスク・グループの場合はMIRROR
、高冗長性のディスク・グループの場合はHIGH
、外部冗長性のディスク・グループの場合はUNPROTECTED
になります。ストライプ化属性を指定しない場合、この値はCOARSE
にデフォルト設定されます。
次の文では、標準冗長性のディスク・グループdgroup2
に対してreliable
という名前の新しいテンプレートを作成しています。
ALTER DISKGROUP dgroup2 ADD TEMPLATE reliable ATTRIBUTES (HIGH FINE);
次の文では、ファイルを保護しない(ミラー化しない)ことを指定するunreliable
という名前の新しいテンプレートを作成しています。
ALTER DISKGROUP dgroup2 ADD TEMPLATE unreliable ATTRIBUTES (UNPROTECTED);
注意: Oracleでは、ハードウェアのミラー化を実装していないかぎり、保護されていないファイルは使用しないでください。前述の例は、テンプレートの属性の設定方法を詳細に説明するために示したものにすぎません。 |
関連項目: ALTER DISKGROUP...ADD TEMPLATE コマンドの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 |
ALTER DISKGROUP
文のMODIFY TEMPLATE
句を使用すると、既存のシステム・デフォルトのディスク・グループ・テンプレートやユーザー定義のディスク・グループ・テンプレートの属性仕様を変更できます。変更されるのは、指定したテンプレートのプロパティのみです。指定していないプロパティは現行の値が維持されます。既存のテンプレートを変更すると、このテンプレートによって作成される新しいファイルにのみ属性の変更が適用されます。既存のファイルの属性は保持されます。
ALTER DISKGROUP
文のDROP TEMPLATE
句を使用して、ディスク・グループから1つ以上のテンプレートを削除します。削除できるのはユーザー定義のテンプレートのみです。システム・デフォルトのテンプレートは削除できません。