17 Oracle Managed Filesの使用
Oracle Databaseは、データベースを構成するファイルを管理できます。
- Oracle Managed Filesについて
Oracle Managed Filesは、データベースの管理を簡素化し、エラーを削減し、ディスク領域の無駄を減らします。 - Oracle Managed Filesの作成および使用の有効化
Oracle Managed Filesを有効化し、使用するには、いくつかの初期化パラメータを設定します。 - Oracle Managed Filesの作成
Oracle Managed Filesを使用して、データ・ファイル、一時ファイル、制御ファイル、REDOログ・ファイルおよびアーカイブ・ログを作成できます。 - Oracle Managed Filesの操作
Oracle Managed Filesのファイル名は、既存のファイルを識別するためにファイル名が使用される場合ならいつでもSQL文で使用可能です。 - Oracle Managed Filesの使用例
使用例では、Oracle Managed Filesの使用方法を示します。
親トピック: Oracle Databaseの構造と記憶域
17.1 Oracle Managed Filesについて
Oracle Managed Filesは、データベースの管理を簡素化し、エラーを削減し、ディスク領域の浪費を減らします。
- Oracle Managed Filesとは
Oracle Managed Filesの使用は、Oracle Databaseの管理を簡素化します。Oracle Managed Filesにより、DBAは、Oracle Databaseを構成するオペレーティング・システム・ファイルを直接に管理する必要がなくなります。 - Oracle Managed Filesを使用できるユーザー
Oracle Managed Filesは、特定のデータベース・タイプに最も有効です。 - 論理ボリューム・マネージャとは
論理ボリューム・マネージャ(LVM)は、ほとんどのオペレーティング・システムで使用可能なソフトウェア・パッケージです。論理ディスク・マネージャ(LDM)と呼ばれることもあります。これを使用すると、複数の物理ディスクの断片を単一の連続するアドレス空間に結合し、ソフトウェアの上位レイヤーに対して1つのディスクとして表示できます。 - ファイル・システムとは
ファイル・システムは、連続したディスク・アドレス・スペース内に構築されたデータ構造です。ファイル・マネージャ(FM)は、ファイル・システムを操作するソフトウェア・パッケージですが、これがファイル・システムと呼ばれる場合もあります。 - Oracle Managed Filesを使用する利点
Oracle Managed Filesは、いくつかの利点を提供します。 - Oracle Managed Filesと既存の機能
Oracle Managed Filesの使用によって、既存の機能がなくなることはありません。
親トピック: Oracle Managed Filesの使用
17.1.1 Oracle Managed Filesとは
Oracle Managed Filesを使用すると、Oracle Databaseの管理が簡素化されます。Oracle Managed Filesにより、DBAは、Oracle Databaseを構成するオペレーティング・システム・ファイルを直接に管理する必要がなくなります。
Oracle Managed Filesでは、データベース・オブジェクト・レベルでデータベースがファイルを自動的に作成、命名および管理するファイル・システム・ディレクトリを指定します。たとえば、指定する必要があるのは作成する表領域のみで、DATAFILE
句を使用して表領域のデータファイルの名前およびパスを指定する必要はありません。この機能は、論理ボリューム・マネージャ(LVM)とともに使用すると効果的です。
データベースでは内部的に標準ファイル・システム・インタフェースを使用し、必要に応じて、次のデータベース構造のファイルを作成および削除します。
-
表領域
-
REDOログ・ファイル
-
制御ファイル
-
アーカイブ・ログ
-
ブロック・チェンジ・トラッキング・ファイル
-
フラッシュバック・ログ
-
RMANバックアップ
初期化パラメータによって、特定のタイプのファイルに使用するファイル・システム・ディレクトリを指定します。これにより、一意のOracle Managed Filesが作成され、不要になると削除されます。
この機能は、トレース・ファイル、監査ファイル、アラート・ログおよびコア・ファイルなどの管理ファイルの作成および命名には影響を与えません。
関連項目:
Oracle Managed Filesの機能を拡充するOracle Databaseの統合ファイル・システムおよびボリューム・マネージャであるOracle Automatic Storage Management(Oracle ASM)の詳細は、Oracle Automatic Storage Management管理者ガイドを参照してください。Oracle Managed Filesによって、ファイルは自動的に作成および管理されますが、Oracle ASMでは、ストライプ化、ソフトウェアのミラー化、動的な記憶域の構成などの追加機能を利用でき、サード・パーティ製の論理ボリューム・マネージャを購入する必要がありません。
親トピック: Oracle Managed Filesについて
17.1.2 Oracle Managed Filesの使用対象
Oracle Managed Filesは、特定のデータベース・タイプに最も有効です。
Oracle Managed Filesは、次のタイプのデータベースに適しています。
-
次のものによってサポートされるデータベース
-
ストライプ化/RAIDおよび動的に拡張可能な論理ボリュームをサポートする論理ボリューム・マネージャ
-
サイズが大きく拡張可能なファイルを提供するファイル・システム
-
-
ローエンド・データベースまたはテスト・データベース
Oracle Managed Filesではオペレーティング・システムのファイル・システムを使用する必要があるため、ディスク上のファイルの配置方法を制御できず、一部のI/Oをチューニングできなくなります。
親トピック: Oracle Managed Filesについて
17.1.3 論理ボリューム・マネージャの概要
論理ボリューム・マネージャ(LVM)は、大部分のオペレーティング・システムに付属するソフトウェア・パッケージです。論理ディスク・マネージャ(LDM)と呼ばれることもあります。これを使用すると、複数の物理ディスクの断片を単一の連続するアドレス空間に結合し、ソフトウェアの上位レイヤーに対して1つのディスクとして表示できます。
LVMを使用することで、基礎になるどの物理ディスクよりも、論理ボリュームに優れた容量、パフォーマンス、信頼性および可用性の特性を持たせることができます。これらの特性を実装するために、ミラーリング、ストライピング、連結およびRAID 5などの技術が使用されています。
LVMの中には、論理ボリュームを作成後、そのボリュームの使用中に特性を変更できるものがあります。ボリュームはサイズ変更やミラー化できるだけでなく、別の物理ディスクに再配置することもできます。
親トピック: Oracle Managed Filesについて
17.1.4 ファイル・システムの概要
ファイル・システムとは、連続するディスク・アドレス空間内に構築されたデータ構造です。ファイル・マネージャ(FM)は、ファイル・システムを操作するソフトウェア・パッケージですが、これがファイル・システムと呼ばれる場合もあります。
オペレーティング・システムには必ずファイル・マネージャが組み込まれています。ファイル・マネージャの主要なタスクは、ファイル・システム内のファイルにディスク領域への割当てまたは割当て解除です。
ファイル・システムを使用すると、多数のファイルにディスク領域を割り当てることができます。各ファイルは、Oracle Databaseなどのアプリケーションに連続するアドレス空間を提供するために作成されます。実際には、ファイル・システムのディスク領域の中でファイルは連続していない場合があります。ファイルは、作成、読取り、書込み、サイズ変更および削除ができます。各ファイルには対応する名前があり、ファイルを参照する際に使用します。
ファイル・システムは通常、LVMが作成する論理ボリュームの最上部に構築されます。したがって、特定のファイル・システム内にあるファイルはすべて、基盤になる論理ボリュームから継承された同じパフォーマンス、信頼性および可用性の特性を持ちます。ファイル・システムは、その中のすべてのファイルによって共有される、単一の記憶域のプールです。ファイル・システムの領域がなくなると、そのファイル・システム内にあるファイルを増やすことはできません。1つのファイル・システムで使用可能な領域が、他のファイル・システムの領域に影響を及ぼすことはありません。ただし、LVMとFMの組合せによっては、ファイル・システムの領域を追加または削除できます。
オペレーティング・システムは、複数のファイル・システムをサポートできます。別々のファイルに異なる記憶特性を与える場合や、使用可能なディスク領域を分割して互いに影響を及ぼさないプールを作成する場合に、複数のファイル・システムが作成されます。
親トピック: Oracle Managed Filesについて
17.1.5 Oracle Managed Filesの使用上の利点
Oracle Managed Filesは、いくつかの利点を提供します。
Oracle Managed Filesを使用すると、次のような利点があります。
-
データベースの管理が容易になります。
ファイル名を考えて、特定の記憶域要件を定義する必要はありません。一貫性のある一連のルールに基づいて、すべての関連ファイルが命名されます。記憶域の特性と記憶域を割り当てるプールは、ファイル・システムによって定義されます。
-
管理者による誤ったファイルの指定が原因で破損することが少なくなります。
Oracle Managed Filesとファイル名はすべて一意です。一般的によくある間違いは、2つの異なるデータベースで同じファイルを使用することであり、これが長時間にわたるシステム・ダウンを引き起こし、コミット済トランザクションが失われる原因となります。1つのファイルを参照するために2つの異なる名前を使用することは、重大な破損の原因になるもう1つの間違いです。
-
不要なファイルの存在によるディスク領域の浪費が減少します。
Oracle Databaseでは、Oracle Managed Filesが不要になったとき、古いファイルが自動的に削除されます。大規模なシステムでは、特定のファイルがまだ必要かどうか誰も確信できないという理由だけで、大量のディスク領域が浪費されています。これは、ディスク上の不要ファイルの削除という管理タスクを容易にし、ファイルを誤って削除することも防止します。
-
テスト・データベースおよび開発データベースを容易に作成できます。
ファイル構造と命名について検討する時間を最小限にとどめることができ、実行するファイル管理タスクも従来より少なくて済みます。これにより、テスト・データベースまたは開発データベースの実際の要件を満たす作業に集中できます。
-
移植可能なサード・パーティ製ツールの開発が容易になります。
Oracle Managed Filesでは、SQLスクリプト内でオペレーティング・システム固有のファイル名を指定する必要がありません。
親トピック: Oracle Managed Filesについて
17.1.6 Oracle Managed Filesと既存の機能
Oracle Managed Filesを使用しても、既存の機能が不要になるわけではありません。
既存データベースは、常に従来どおり操作できます。古いファイルはそれまでの方法で管理し、その一方で新しいファイルは管理ファイルとして作成できます。したがって、データベースにはOracle Managed Filesとそれ以外のファイルがともに存在する状態になります。
親トピック: Oracle Managed Filesについて
17.2 Oracle Managed Filesの作成および使用の有効化
Oracle Managed Filesを有効化し、使用するには、いくつかの初期化パラメータを設定します。
- Oracle Managed Filesを有効化する初期化パラメータ
次の表に、Oracle Managed Filesの使用を可能にする初期化パラメータを示します。 - DB_CREATE_FILE_DEST初期化パラメータの設定
DB_CREATE_FILE_DEST
初期化パラメータは、重要なデータベース・ファイルの場所を指定します。 - DB_RECOVERY_FILE_DESTパラメータの設定
初期化パラメータ・ファイルにDB_RECOVERY_FILE_DEST
およびDB_RECOVERY_FILE_DEST_SIZE
パラメータを設定して、高速リカバリ領域のデフォルトの場所を識別できるようにします。 - DB_CREATE_ONLINE_LOG_DEST_n初期化パラメータの設定
DB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータは、REDOログ・ファイルおよび制御ファイルの場所を指定します。
親トピック: Oracle Managed Filesの使用
17.2.1 Oracle Managed Filesを有効化する初期化パラメータ
次の表に、Oracle Managed Filesの使用を有効化する初期化パラメータを示します。
これらのパラメータによって指定するファイル・システム・ディレクトリはすでに存在している必要があり、データベースによって作成されません。また、ディレクトリには、データベースによるファイルの作成権限が必要です。
ファイル作成操作で場所を明示的に指定しなかった場合は、必ずデフォルトの場所が使用されます。ファイル名はデータベースが作成するため、作成されたファイルはOracle Managed Filesになります。
これら2つの初期化パラメータはどちらも動的であり、ALTER SYSTEM
またはALTER SESSION
文を使用して設定できます。
関連項目:
-
初期化パラメータの詳細は、『Oracle Databaseリファレンス』
17.2.2 DB_CREATE_FILE_DEST初期化パラメータの設定
DB_CREATE_FILE_DEST
初期化パラメータは、重要なデータベース・ファイルの場所を指定します。
初期化パラメータ・ファイルにDB_CREATE_FILE_DEST
初期化パラメータを設定して、データベースが次のファイルを作成するデフォルトの場所を識別できるようにします。
-
データファイル
-
一時ファイル
-
REDOログ・ファイル
-
制御ファイル
-
ブロック・チェンジ・トラッキング・ファイル
ファイル・システム・ディレクトリの名前を指定して、これらに対するオペレーティング・システム・ファイルを作成するためのデフォルトの場所にします。次の例では、Oracle Managed Filesを作成する際に使用するデフォルトのディレクトリとして、/u01/app/oracle/oradata
を設定しています。
DB_CREATE_FILE_DEST = '/u01/app/oracle/oradata'
17.2.3 DB_RECOVERY_FILE_DESTパラメータの設定
初期化パラメータ・ファイルにDB_RECOVERY_FILE_DEST
およびDB_RECOVERY_FILE_DEST_SIZE
パラメータを設定して、高速リカバリ領域のデフォルトの場所を識別できるようにします。
高速リカバリ領域には、次が格納されます。
-
REDOログ・ファイルまたはその多重コピー
-
制御ファイルまたはその多重コピー
-
RMANバックアップ(データファイルのコピー、制御ファイルのコピー、バックアップ・ピース、制御ファイルの自動バックアップ)
-
アーカイブ・ログ
-
フラッシュバック・ログ
ファイル・システム・ディレクトリの名前を指定して、これらに対するオペレーティング・システム・ファイルを作成するためのデフォルトの場所にします。たとえば:
DB_RECOVERY_FILE_DEST = '/u01/app/oracle/fast_recovery_area' DB_RECOVERY_FILE_DEST_SIZE = 20G
17.2.4 DB_CREATE_ONLINE_LOG_DEST_n初期化パラメータの設定
DB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータは、REDOログ・ファイルおよび制御ファイルの場所を指定します。
初期化パラメータ・ファイルにDB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータを設定して、データベースが次のファイルを作成するデフォルトの場所を識別できるようにします。
-
REDOログ・ファイル
-
制御ファイル
ファイル・システム・ディレクトリまたはOracle ASMディスク・グループの名前を指定して、これらに対するファイルを作成するためのデフォルトの場所にします。多重コピーを配置する場所は最大5つまで指定できます。
REDOログ・ファイルおよび制御ファイルの作成時のみ、このパラメータはDB_CREATE_FILE_DEST
およびDB_RECOVERY_FILE_DEST
初期化パラメータで指定されたデフォルトの場所よりも優先されます。DB_CREATE_FILE_DEST
パラメータを指定せず、DB_CREATE_ONLINE_LOG_DEST_
n
パラメータのみを指定している場合は、REDOログ・ファイルと制御ファイルのみがOracle Managed Filesとして作成されます。
少なくとも2つのパラメータを指定することをお薦めします。たとえば:
DB_CREATE_ONLINE_LOG_DEST_1 = '/u02/oradata' DB_CREATE_ONLINE_LOG_DEST_2 = '/u03/oradata'
これによって、ファイルを多重化できるため、REDOログ・ファイルまたは制御ファイルの保存先のどちらかで障害が発生した場合のフォルト・トレランスが向上します。
17.3 Oracle Managed Filesの作成
Oracle Managed Filesを使用して、データ・ファイル、一時ファイル、制御ファイル、REDOログ・ファイルおよびアーカイブ・ログを作成できます。
- Oracle DatabaseによるOracle Managed Filesの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを作成します。 - Oracle Managed Filesの命名方法
Oracle Managed Filesのファイル名は、ファイル命名に関するOptimal Flexible Architecture (OFA)標準に準拠しています。 - データベース作成時のOracle Managed Filesの作成
CREATE DATABASE
文は、Oracle Managed Filesに関連するアクションを実行できます。 - Oracle Managed Filesを使用した表領域用データファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して表領域のデータファイルを作成できます。 - Oracle Managed Filesを使用した一時表領域用一時ファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して一時表領域の一時ファイルを作成できます。 - Oracle Managed Filesを使用した制御ファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して制御ファイルを作成できます。 - Oracle Managed Filesを使用したREDOログ・ファイルの作成
REDOログ・ファイルはデータベース作成時に作成されます。次のいずれかの文を発行した場合にも作成できます:ALTER DATABASE ADD LOGFILE
およびALTER DATABASE OPEN RESETLOGS
。 - Oracle Managed Filesを使用したアーカイブ・ログの作成
アーカイブ・ログは、バックグラウンド・プロセスまたはSQL文によって作成されます。
親トピック: Oracle Managed Filesの使用
17.3.1 Oracle DatabaseによるOracle Managed Filesの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesが作成されます。
次の条件のいずれかを満たしている場合で、作成操作でファイル仕様を指定しなかったときに、必要に応じてOracle DatabaseによってOracle Managed Filesが作成されます。
-
初期化パラメータ・ファイルに、
DB_CREATE_FILE_DEST
、DB_RECOVERY_FILE_DEST
またはDB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータのいずれかを指定している場合 -
DB_RECOVERY_FILE_DEST
、DB_CREATE_FILE_DEST
またはDB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータのいずれかを動的に設定するために、ALTER SYSTEM
文を発行した場合 -
DB_CREATE_FILE_DEST
、DB_RECOVERY_FILE_DEST
またはDB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータのいずれかを動的に設定するために、ALTER SESSION
文を発行した場合
Oracle Managed Filesを作成する文がエラーを検出した場合、またはなんらかの障害のために完了しなかった場合は、その文によって作成されたOracle Managed Filesはすべて、エラーまたは障害のリカバリの一部として自動的に削除されます。ただし、ファイル・システムやストレージ・サブシステムで発生する多数の潜在的なエラーが原因で、オペレーティング・システムのコマンドを使用した手動でのファイル削除が必要になる場合があります。
親トピック: Oracle Managed Filesの作成
17.3.2 Oracle Managed Filesの命名方法
Oracle Managed Filesのファイル名は、ファイル命名に関するOptimal Flexible Architecture(OFA)標準に準拠しています。
ノート:
この項で説明する命名方法は、オペレーティング・システムのファイル・システムに作成されるファイルにのみ適用されます。Oracle Automatic Storage Management(Oracle ASM)ディスク・グループで作成されたファイルの命名方式の詳細は、Oracle Automatic Storage Management管理者ガイドを参照してください。
割り当てられた名前は、次の要件を満たしています。
-
データベース・ファイルが他のすべてのファイルと容易に区別できます。
-
1つのデータベース・タイプのファイルが、他のデータベース・タイプのファイルと容易に区別できます。
-
ファイルはファイル・タイプ固有の重要な属性に明確に関連付けられます。たとえば、データファイルの表領域への関連付けを容易にするためにデータファイル名に表領域名を含めたり、アーカイブ・ログ名にスレッド、順序および作成日を含めることが可能です。
同じ名前を持つOracle Managed Filesは1つもありません。Oracle Managed Filesの作成に使用される名前は、次の3つのソースから構成されます。
-
デフォルトの作成場所。
-
ファイルのタイプに基づいて選択されたファイル名テンプレート。テンプレートは、オペレーティング・システムのプラットフォームや、Oracle Automatic Storage Managementを使用しているかどうかによって異なります。
-
Oracle Databaseまたはオペレーティング・システムによって作成された一意の文字列。これにより、ファイル作成によって既存のファイルが破損しないこと、および誤って他のファイルが選択されないことが保証されます。
具体的な例として、Solarisファイル・システムにおけるOracle Managed Filesのファイル名の書式を次に示します。
destination_prefix/o1_mf_%t_%u_.dbf
ここで:
-
destination_prefix
はdestination_location
/db_unique_name
/datafile
です。ここで:
-
destination_location
は、DB_CREATE_FILE_DEST
に指定した場所です。 -
db_unique_name
は、ターゲット・データベースのグローバルな一意の名前(DB_UNIQUE_NAME
初期化パラメータ)です。DB_UNIQUE_NAME
パラメータがない場合は、DB_NAME
初期化パラメータ値が使用されます。
-
-
%tは表領域の名前を表します。
-
%uは一意性を保証する8文字の文字列を表します。
たとえば、次のようなパラメータ設定を考えてみます。
DB_CREATE_FILE_DEST = /u01/app/oracle/oradata DB_UNIQUE_NAME = PAYROLL
この例のデータファイル名は次のようになります。
/u01/app/oracle/oradata/PAYROLL/datafile/o1_mf_tbs1_2ixh90q_.dbf
他のファイル・タイプの名前もほぼ同じです。他のプラットフォームでもファイル名はほぼ同じですが、各プラットフォームのネーミング規則の制約を受けます。
後続の例では、Solarisファイル・システムでOMFアーカイブ先として表示されるOracle Managed Filesの名前を使用します。
ノート:
Oracle Managed Filesは名前に基づいて識別されます。ファイル名を変更すると、データベースではOracle Managed Filesとして認識できなくなり、ファイルは適切に管理されません。
親トピック: Oracle Managed Filesの作成
17.3.3 データベース作成時のOracle Managed Filesの作成
CREATE DATABASE
文は、Oracle Managed Filesに関連するアクションを実行できます。
ノート:
この項で説明するルールとデフォルトは、Database Configuration Assistant(DBCA)によるデータベースの作成にも適用されます。DBCAでは、グラフィカル・インタフェースを使用してOracle Managed Filesを有効化し、この項で説明する初期化パラメータに対応するファイルの場所を指定できます。
- データベース作成時の制御ファイルの指定
データベース作成時に、CONTROL_FILES
初期化パラメータによって指定されたファイルに制御ファイルが作成されます。 - データベース作成時のREDOログ・ファイルの指定
CREATE DATABASE
文でLOGFILE
句は必須でなく、これを省略すると、Oracle Managed FilesのREDOログ・ファイルを作成する簡単な手段が提供されます。 - データベース作成時のSYSTEM表領域およびSYSAUX表領域用データファイルの指定
CREATE DATABASE
文でDATAFILE
句またはSYSAUX
DATAFILE
句は必須でなく、これを省略すると、SYSTEM
表領域およびSYSAUX
表領域用のOracle Managed Filesのデータファイルが簡単に作成されます。 - データベース作成時のUNDO表領域データファイルの指定
UNDO TABLESPACE
句のDATAFILE
副次句は必須でなく、ファイル指定でファイル名は必要ありません。 - データベース作成時のデフォルト一時表領域用一時ファイルの指定
DEFAULT TEMPORARY TABLESPACE
句のTEMPFILE
副次句は必須でなく、ファイル指定でファイル名は必要ありません。 - Oracle Managed Filesを使用したCREATE DATABASE文の例
例では、Oracle Managed Files機能を使用する場合にCREATE DATABASE
文を使用したデータベースの作成を示しています。
関連項目:
CREATE DATABASE
文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
親トピック: Oracle Managed Filesの作成
17.3.3.1 データベース作成時の制御ファイルの指定
データベース作成時には、CONTROL_FILES
初期化パラメータによって指定されたファイルで、制御ファイルが作成されます。
CONTROL_FILES
パラメータが設定されておらず、Oracle Managed Filesの作成に必要な初期化パラメータが少なくとも1つ設定されている場合は、制御ファイルのデフォルトの保存先にOracle Managed Filesの制御ファイルが作成されます。デフォルトの保存先は、次の優先度に従って定義されます。
-
DB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータで指定されている1つ以上の制御ファイル。最初のディレクトリに作成されたファイルが主制御ファイルになります。DB_CREATE_ONLINE_LOG_DEST_
n
が指定されている場合は、DB_CREATE_FILE_DEST
またはDB_RECOVERY_FILE_DEST
(高速リカバリ領域)に制御ファイルは作成されません。 -
DB_CREATE_ONLINE_LOG_DEST_
n
に値が指定されていない場合で、DB_CREATE_FILE_DEST
およびDB_RECOVERY_FILE_DEST
の両方に値が設定されている場合は、それぞれの場所に1つの制御ファイルが作成されます。DB_CREATE_FILE_DEST
に指定された場所が主制御ファイルの場所になります。 -
DB_CREATE_FILE_DEST
に対してのみ値が指定されている場合は、その場所に1つの制御ファイルが作成されます。 -
DB_RECOVERY_FILE_DEST
に対してのみ値が指定されている場合は、その場所に1つの制御ファイルが作成されます。
CONTROL_FILES
パラメータが設定されておらず、これらの初期化パラメータがいずれも設定されていない場合は、Oracle Databaseのデフォルトのアクションはオペレーティング・システムによって異なります。最低1つの制御ファイルのコピーが、デフォルトの場所(オペレーティング・システムによって異なる)に作成されます。このようにして作成された制御ファイルのコピーはOracle Managed Filesではなく、初期化パラメータ・ファイルにCONTROL_FILES
初期化パラメータを追加する必要があります。
Oracle Managed Filesの制御ファイルが作成された場合で、サーバー・パラメータ・ファイルが存在するときは、サーバー・パラメータ・ファイルにCONTROL_FILES
初期化パラメータのエントリが追加されます。サーバー・パラメータ・ファイルが存在しない場合は、CONTROL_FILES
初期化パラメータのエントリをテキスト形式の初期化パラメータ・ファイルに手動で追加する必要があります。
関連項目:
17.3.3.2 データベース作成時のREDOログ・ファイルの指定
CREATE DATABASE
文でLOGFILE
句は必須でなく、単純にこれを省略するとOracle Managed FilesのREDOログ・ファイルが作成されます。
LOGFILE
句を省略すると、デフォルトのREDOログ・ファイルの保存先にREDOログ・ファイルが作成されます。デフォルトの保存先は、次の優先度に従って定義されます。
-
DB_CREATE_ONLINE_LOG_DEST_
n
が設定されている場合は、指定された各ディレクトリにログ・ファイルのメンバーが作成されます。最大数はMAXLOGMEMBERS
初期化パラメータの値です。 -
DB_CREATE_ONLINE_LOG_DEST_
n
パラメータが設定されていない場合で、DB_CREATE_FILE_DEST
およびDB_RECOVERY_FILE_DEST
初期化パラメータの両方が設定されているときは、それぞれの場所に1つのOracle Managed Filesのログ・ファイルのメンバーが作成されます。DB_CREATE_FILE_DEST
アーカイブ先のログ・ファイルが最初のメンバーです。 -
DB_CREATE_FILE_DEST
初期化パラメータのみが指定されている場合は、その場所にログ・ファイルのメンバーが作成されます。 -
DB_RECOVERY_FILE_DEST
初期化パラメータのみが指定されている場合は、その場所にログ・ファイルのメンバーが作成されます。
Oracle Managed FilesのREDOログ・ファイルのデフォルト・サイズは100MBです。
オプションで、Oracle Managed FilesのREDOログ・ファイルを作成し、LOGFILE
句を含めながらファイル名を省略することにより、デフォルト属性を上書きできます。REDOログ・ファイルも同様に作成されますが、異なる点は、CREATE DATABASE
のLOGFILE
句にファイル名が入力されておらず、Oracle Managed Filesの作成に必要な初期化パラメータが1つも提供されていない場合、CREATE DATABASE
文が失敗することです。
関連項目:
17.3.3.3 データベース作成時のSYSTEM表領域およびSYSAUX表領域用データファイルの指定
CREATE DATABASE
文でDATAFILE
句またはSYSAUX
DATAFILE
句は必須でなく、単純にこれを省略するとSYSTEM
表領域およびSYSAUX
表領域用のOracle Managed Filesのデータファイルが作成されます。
DATAFILE
句を省略すると、次の処理のいずれかが実行されます。
-
DB_CREATE_FILE_DEST
が設定されている場合は、SYSTEM
表領域用およびSYSAUX
表領域用のOracle Managed FilesのデータファイルがDB_CREATE_FILE_DEST
ディレクトリに1つずつ作成されます。 -
DB_CREATE_FILE_DEST
が設定されていない場合は、オペレーティング・システム固有の名前とサイズで、SYSTEM
表領域のデータファイルおよびSYSAUX
表領域のデータファイルが1つずつ作成されます。この方法で作成されたSYSTEM
表領域のデータファイルまたはSYSAUX
表領域のデータファイルはOracle Managed Filesではありません。
デフォルトでは、SYSTEM
およびSYSAUX
表領域用を含めてOracle Managed Filesのデータファイルは100MBで、自動拡張可能です。自動拡張が必要な場合、データファイルは既存サイズまたは100MB単位(いずれか小さい方)で拡張されます。データファイルの指定時(CREATE
操作またはALTER TABLESPACE
操作時)に、STORAGE
句のNEXT
パラメータを使用して、自動拡張可能単位を明示的に指定することもできます。
必要に応じて、SYSTEM
表領域用またはSYSAUX
表領域用のOracle Managed Filesのデータファイルを作成し、デフォルトの属性を上書きできます。そのためには、ファイル名を省略し、上書きする属性を指定して、DATAFILE
句を指定します。ファイル名を指定せずに、DB_CREATE_FILE_DEST
パラメータを設定すると、SYSTEM
表領域用またはSYSAUX
表領域用のOracle Managed FilesのデータファイルがDB_CREATE_FILE_DEST
ディレクトリに作成され、指定した属性が上書きされます。ただし、ファイル名を指定せず、DB_CREATE_FILE_DEST
パラメータを設定しないと、CREATE DATABASE
文が失敗します。
Oracle Managed Filesのデフォルト属性を上書きする際、SIZE
値が指定されており、AUTOEXTEND
句が指定されていない場合、データファイルは自動拡張可能ではありません。
17.3.3.4 データベース作成時のUNDO表領域データファイルの指定
UNDO TABLESPACE
句のDATAFILE
副次句は必須でなく、ファイル仕様に必ずしもファイル名を指定する必要はありません。
ファイル名を指定せず、DB_CREATE_FILE_DEST
パラメータが設定されている場合は、Oracle Managed FilesのデータファイルがDB_CREATE_FILE_DEST
ディレクトリに作成されます。DB_CREATE_FILE_DEST
が設定されていない場合は、構文エラーで文が失敗します。
UNDO TABLESPACE
句自体は、CREATE DATABASE
文のオプションです。この句を指定せず、自動UNDO管理モードが使用可能な場合(デフォルト)は、次のルールに従って、SYS_UNDOTS
という名前のデフォルトのUNDO表領域が作成され、自動拡張可能な20MBのデータファイルが割り当てられます。
-
DB_CREATE_FILE_DEST
が設定されている場合は、指定されたディレクトリにOracle Managed Filesのデータファイルが作成されます。 -
DB_CREATE_FILE_DEST
が設定されていない場合は、オペレーティング・システム固有のデフォルトの場所にデータファイルが作成されます。関連項目:
17.3.3.5 データベース作成時のデフォルト一時表領域用一時ファイルの指定
DEFAULT TEMPORARY TABLESPACE
句のTEMPFILE
副次句は必須でなく、ファイル仕様に必ずしもファイル名を指定する必要はありません。
ファイル名を指定せず、DB_CREATE_FILE_DEST
パラメータが設定されている場合は、Oracle Managed Filesの一時ファイルがDB_CREATE_FILE_DEST
ディレクトリに作成されます。DB_CREATE_FILE_DEST
が設定されていない場合は、構文エラーでCREATE DATABASE
文が失敗します。
DEFAULT TEMPORARY TABLESPACE
句自体はオプションです。この句を指定していない場合、デフォルト一時表領域は作成されません。
Oracle Managed Filesの一時ファイルのデフォルト・サイズは100MBです。このファイルは自動的に拡張可能で、最大サイズに制限はありません。
17.3.3.6 Oracle Managed Filesを使用したCREATE DATABASE文の例
例では、Oracle Managed Files機能を使用する場合にCREATE DATABASE
文を使用したデータベースの作成を示しています。
CREATE DATABASE: 例1
この例では、次のOracle Managed Filesを使用してデータベースを作成します。
-
ディレクトリ
/u01/app/oracle/oradata
のSYSTEM
表領域用データファイル。サイズは無制限に自動拡張可能です。 -
ディレクトリ
/u01/app/oracle/oradata
のSYSAUX
表領域用データファイル。サイズは無制限に自動拡張可能です。表領域は、自動セグメント領域管理によってローカルに管理されます。
-
それぞれ100MBのメンバーを2つ含む2つのオンライン・ログ・グループ。
/u02/oradata
と/u03/oradata
に1つずつ作成されます。 -
自動UNDO管理モードが使用可能の場合(デフォルト)は、ディレクトリ
/u01/app/oracle/oradata
のUNDO表領域用データファイル。サイズは20MBで、無制限に自動拡張可能です。SYS_UNDOTS
という名前のUNDO表領域が作成されます。 -
CONTROL_FILES
初期化パラメータが指定されていない場合は、2つの制御ファイルが/u02/oradata
と/u03/oradata
に1つずつ作成されます。/u02/oradata
の制御ファイルが主制御ファイルになります。
Oracle Managed Filesに関連する初期化パラメータ・ファイルで、次のパラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/app/oracle/oradata' DB_CREATE_ONLINE_LOG_DEST_1 = '/u02/oradata' DB_CREATE_ONLINE_LOG_DEST_2 = '/u03/oradata'
SQLプロンプトから次の文を発行します。
CREATE DATABASE sample;
ローカル管理されるSYSTEM
表領域を持つデータベースを作成するには、EXTENT
MANAGEMENT
LOCAL
句を追加します。
CREATE DATABASE sample EXTENT MANAGEMENT LOCAL;
この句を使用しない場合は、SYSTEM
表領域はディクショナリ管理されます。ローカル管理のSYSTEM
表領域を作成することをお薦めします。
CREATE DATABASE: 例2
この例では、次のOracle Managed Filesを使用してデータベースを作成します。
-
ディレクトリ
/u01/app/oracle/oradata
のSYSTEM
表領域用データファイル。サイズは無制限に自動拡張可能です。 -
ディレクトリ
/u01/app/oracle/oradata
のSYSAUX
表領域用データファイル。サイズは無制限に自動拡張可能です。表領域は、自動セグメント領域管理によってローカルに管理されます。
-
ディレクトリ
/u01/app/oracle/oradata
の2つのREDOログ・ファイル(各100MB)。これらのファイルは多重化されていません。 -
ディレクトリ
/u01/app/oracle/oradata
のUNDO表領域用データファイル。サイズは20MBで、無制限に自動拡張可能です。SYS_UNDOTS
という名前のUNDO表領域が作成されます。 -
/u01/app/oracle/oradata
の1つの制御ファイル。
この例では、次のように想定されています。
-
初期化パラメータ・ファイルに
DB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータは1つも指定されていません。 -
初期化パラメータ・ファイルに
CONTROL_FILES
初期化パラメータは指定されていません。 -
自動UNDO管理モードは使用可能になっています。
SQLプロンプトから次の文を発行します。
ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u01/app/oracle/oradata'; CREATE DATABASE sample2 EXTENT MANAGEMENT LOCAL;
このデータベース構成は、本番データベースにはお薦めしません。この例は、非常にローエンドのデータベースか、単純なテスト・データベースを簡単に作成する方法を示しています。このデータベースの耐障害性を高めるには、制御ファイルを少なくとももう1つ作成し、REDOログを多重化する必要があります。
CREATE DATABASE: 例3
この例では、デフォルト一時表領域およびUNDO表領域用のOracle Managed Filesのファイル・サイズを指定しています。次のOracle Managed Filesを持つデータベースが作成されます。
-
ディレクトリ
/u01/app/oracle/oradata
のSYSTEM
表領域用データファイル(400MB)。SIZE
が指定されているため、このファイルは自動拡張可能ではありません。 -
ディレクトリ
/u01/app/oracle/oradata.
のSYSAUX
表領域用データファイル(200MB)SIZE
が指定されているため、このファイルは自動拡張可能ではありません。表領域は、自動セグメント領域管理によってローカルに管理されます。 -
それぞれ100MBのメンバーを2つ含む2つのREDOログ・グループ。ディレクトリ
/u02/oradata
と/u03/oradata
に1つずつ作成されます。 -
デフォルト一時表領域
dflt_ts
に対して、ディレクトリ/u01/app/oracle/oradata
の一時ファイル(10MB)。SIZE
が指定されているため、このファイルは自動拡張可能ではありません。 -
UNDO表領域
undo_ts
に対して、ディレクトリ/u01/app/oracle/oradata
のデータファイル(100MB)。SIZE
が指定されているため、このファイルは自動拡張可能ではありません。 -
CONTROL_FILES
初期化パラメータが指定されていない場合は、2つの制御ファイルがディレクトリ/u02/oradata
と/u03/oradata
に1つずつ作成されます。/u02/oradata
の制御ファイルが主制御ファイルになります。
初期化パラメータ・ファイルで、次のパラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/app/oracle/oradata' DB_CREATE_ONLINE_LOG_DEST_1 = '/u02/oradata' DB_CREATE_ONLINE_LOG_DEST_2 = '/u03/oradata'
SQLプロンプトから次の文を発行します。
CREATE DATABASE sample3 EXTENT MANAGEMENT LOCAL DATAFILE SIZE 400M SYSAUX DATAFILE SIZE 200M DEFAULT TEMPORARY TABLESPACE dflt_ts TEMPFILE SIZE 10M UNDO TABLESPACE undo_ts DATAFILE SIZE 100M;
関連項目:
17.3.4 Oracle Managed Filesを使用した表領域用データファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して表領域のデータファイルを作成できます。
- Oracle Managed Filesを使用した表領域用データファイルの作成について
いくつかの条件が満たされた場合、次のSQL文は、Oracle Managed Filesを使用して表領域のデータファイルを作成できます:CREATE TABLESPACE
、CREATE UNDO TABLESPACE
およびALTER TABLESPACE ... ADD DATAFILE
。 - CREATE TABLESPACE: 例
Oracle Managed Filesを使用して表領域を作成する例を示します。 - CREATE UNDO TABLESPACE: 例
UNDO表領域を作成する例を示します。 - ALTER TABLESPACE: 例
表領域にOracle Managed Filesの自動拡張可能なデータファイルを追加する例を示します。
親トピック: Oracle Managed Filesの作成
17.3.4.1 Oracle Managed Filesを使用した表領域用データファイルの作成について
いくつかの条件が満たされた場合、次のSQL文は、Oracle Managed Filesを使用して表領域のデータファイルを作成できます: CREATE TABLESPACE
、CREATE UNDO TABLESPACE
およびALTER TABLESPACE ... ADD DATAFILE
。
次の文は、データファイルを作成できます。
-
CREATE
TABLESPACE
-
CREATE
UNDO
TABLESPACE
-
ALTER
TABLESPACE
...ADD
DATAFILE
表領域を作成するときは、永続表領域とUNDO表領域のいずれの場合も、DATAFILE
句はオプションです。DATAFILE
句を指定する場合、ファイル名はオプションです。DATAFILE
句またはファイル名を省略すると、次のルールが適用されます。
-
DB_CREATE_FILE_DEST
初期化パラメータが設定されている場合は、パラメータで指定された場所にOracle Managed Filesのデータファイルが作成されます。 -
DB_CREATE_FILE_DEST
初期化パラメータが設定されていない場合は、データファイルを作成する文が失敗します。
ALTER TABLESPACE...ADD DATAFILE
文で表領域にデータファイルを追加する場合、ファイル名はオプションです。ファイル名を省略すると、前の段落で説明したのと同じルールが適用されます。
デフォルトでは、永続表領域用のOracle Managed Filesのデータファイルのサイズは100MBです。このファイルは自動的に拡張可能で、最大サイズに制限はありません。ただし、DATAFILE
句でSIZE
値を指定する(AUTOEXTEND
句は指定しない)ことによって、これらのデフォルトを上書きした場合、データファイルは自動拡張可能ではありません。
17.3.4.2 CREATE TABLESPACE: 例
Oracle Managed Filesを使用して表領域を作成する例を示します。
関連項目:
CREATE TABLESPACE
文の詳細は、『Oracle Database SQL言語リファレンス』
CREATE TABLESPACE: 例1
次の例では、データファイルを作成するデフォルトの場所を/u01/oradata
に設定し、その場所のデータファイルを含む表領域tbs_1
を作成します。データファイルは100MBで、無制限に自動拡張可能です。
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u01/oradata'; SQL> CREATE TABLESPACE tbs_1;
CREATE TABLESPACE: 例2
この例では、/u01/oradata
ディレクトリにデータファイルを含むtbs_2
という表領域を作成します。データファイルの初期サイズは400 MBで、SIZE句が指定されているため自動拡張可能ではありません。
初期化パラメータ・ファイルで、次のパラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/oradata'
SQLプロンプトから次の文を発行します。
SQL> CREATE TABLESPACE tbs_2 DATAFILE SIZE 400M;
CREATE TABLESPACE: 例3
この例では、/u01/oradata
ディレクトリに自動拡張可能なデータファイルを含むtbs_3
という表領域を作成します(初期サイズ100MB、最大サイズ800MB)。
初期化パラメータ・ファイルで、次のパラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/oradata'
SQLプロンプトから次の文を発行します。
SQL> CREATE TABLESPACE tbs_3 DATAFILE AUTOEXTEND ON MAXSIZE 800M;
CREATE TABLESPACE: 例4
次の例では、データファイルを作成するデフォルトの場所を/u01/oradata
に設定し、そのディレクトリに2つのデータファイルを含むtbs_4
という表領域を作成します。どちらのデータファイルも初期サイズは200MBで、SIZE
値が指定されているため自動拡張可能ではありません。
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u01/oradata'; SQL> CREATE TABLESPACE tbs_4 DATAFILE SIZE 200M, SIZE 200M;
17.3.4.3 CREATE UNDO TABLESPACE: 例
UNDO表領域を作成する例を示します。
次の例では、ディレクトリ/u01/oradata
上のデータファイルを含むUNDO表領域undotbs_1
を作成しています。UNDO表領域用のデータファイルは100MBで、無制限に自動拡張可能です。
-
次の初期化パラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/oradata'
-
次のSQL文を発行します。
SQL> CREATE UNDO TABLESPACE undotbs_1;
関連項目:
CREATE UNDO TABLESPACE
文の詳細は、『Oracle Database SQL言語リファレンス』
17.3.4.4 ALTER TABLESPACE: 例
表領域にOracle Managed Filesの自動拡張可能なデータファイルを追加する例を示します。
この例では、自動拡張可能なOracle Managed Filesのデータファイルをtbs_1
表領域に追加しています。データファイルは初期サイズが100MBで、最大サイズが800MBです。
-
次の初期化パラメータを設定します。
DB_CREATE_FILE_DEST = '/u01/oradata'
-
次のSQL文を発行します。
SQL> ALTER TABLESPACE tbs_1 ADD DATAFILE AUTOEXTEND ON MAXSIZE 800M;
関連項目:
ALTER TABLESPACE
文の詳細は、『Oracle Database SQL言語リファレンス』
17.3.5 Oracle Managed Filesを使用した一時表領域用一時ファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して一時表領域の一時ファイルを作成できます。
- Oracle Managed Filesを使用した一時表領域用一時ファイルの作成について
いくつかの条件が満たされた場合、次のSQL文は、Oracle Managed Filesを使用して表領域の一時ファイルを作成できます:CREATE TEMPORARY TABLESPACE
およびALTER TABLESPACE ... ADD TEMPFILE
。 - CREATE TEMPORARY TABLESPACE: 例
一時表領域を作成する例を示します。 - ALTER TABLESPACE... ADD TEMPFILE: 例
一時表領域に一時ファイルを追加する例を示します。
親トピック: Oracle Managed Filesの作成
17.3.5.1 Oracle Managed Filesを使用した一時表領域用一時ファイルの作成について
いくつかの条件が満たされた場合、次のSQL文は、Oracle Managed Filesを使用して表領域の一時ファイルを作成できます: CREATE TEMPORARY TABLESPACE
およびALTER TABLESPACE ... ADD TEMPFILE
。
ここでは、一時ファイルを作成する次の文について説明します。
-
CREATE
TEMPORARY
TABLESPACE
-
ALTER
TABLESPACE
...ADD
TEMPFILE
一時表領域を作成する場合、TEMPFILE
句はオプションです。TEMPFILE
句を指定する場合、ファイル名はオプションです。TEMPFILE
句またはファイル名を省略すると、次のルールが適用されます。
-
DB_CREATE_FILE_DEST
初期化パラメータが設定されている場合は、パラメータで指定された場所にOracle Managed Filesの一時ファイルが作成されます。 -
DB_CREATE_FILE_DEST
初期化パラメータが設定されていない場合は、一時ファイルを作成する文が失敗します。
ALTER TABLESPACE...ADD TEMPFILE
文で表領域に一時ファイルを追加する場合、ファイル名はオプションです。ファイル名を省略すると、前の段落で説明したのと同じルールが適用されます。
Oracle Managed Filesのデフォルト属性を上書きする際、SIZE
値が指定されており、AUTOEXTEND
句が指定されていない場合、データファイルは自動拡張可能ではありません。
17.3.5.2 CREATE TEMPORARY TABLESPACE: 例
一時表領域を作成する例を示します。
次の例では、データファイルを作成するデフォルトの場所を/u01/oradata
に設定してから、その場所の一時ファイルを含む表領域temptbs_1
を作成します。一時ファイルは100MBで、無制限に自動拡張可能です。
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u01/oradata'; SQL> CREATE TEMPORARY TABLESPACE temptbs_1;
関連項目:
CREATE TABLESPACE
文の詳細は、『Oracle Database SQL言語リファレンス』
17.3.5.3 ALTER TABLESPACE... ADD TEMPFILE: 例
一時表領域に一時ファイルを追加する例を示します。
次の例では、データファイルを作成するデフォルトの場所を/u03/oradata
に設定してから、デフォルトの場所のtemptbs_1
という表領域に一時ファイルを追加しています。一時ファイルの初期サイズは100MBです。これは無制限に自動拡張可能です。
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u03/oradata'; SQL> ALTER TABLESPACE TBS_1 ADD TEMPFILE;
関連項目:
ALTER TABLESPACE
文の詳細は、『Oracle Database SQL言語リファレンス』
17.3.6 Oracle Managed Filesを使用した制御ファイルの作成
いくつかの条件が満たされた場合、Oracle DatabaseではOracle Managed Filesを使用して制御ファイルを作成できます。
- Oracle Managed Filesを使用した制御ファイルの作成について
いくつかの条件が満たされた場合、CREATE CONTROLFILE
SQL文により、Oracle Managed Filesを使用して制御ファイルを作成できます。 - NORESETLOGSキーワードを使用したCREATE CONTROLFILE: 例
NORESETLOGS
キーワードを含むCREATE CONTROLFILE
文を使用して制御ファイルを作成する例を示します。 - RESETLOGSキーワードを使用したCREATE CONTROLFILE: 例
RESETLOGS
キーワードを含むCREATE CONTROLFILE
文を使用して制御ファイルを作成する例を示します。
親トピック: Oracle Managed Filesの作成
17.3.6.1 Oracle Managed Filesを使用した制御ファイルの作成について
いくつかの条件が満たされた場合、CREATE CONTROLFILE
SQL文により、Oracle Managed Filesを使用して制御ファイルを作成できます。
CREATE CONTROLFILE
文を発行すると、CONTROL_FILES初期化パラメータによって指定されたファイルで、制御ファイルが作成(
REUSE
を指定した場合は再利用)されます。CONTROL_FILES
パラメータが設定されていない場合は、制御ファイルのデフォルトの保存先に制御ファイルが作成されます。デフォルトの保存先は、「データベース作成時の制御ファイルの指定」に記載されている優先度によって決まります。
Oracle DatabaseによってOracle Managed Filesの制御ファイルが作成された場合で、サーバー・パラメータ・ファイルが存在するときは、サーバー・パラメータ・ファイルにCONTROL_FILES
初期化パラメータが作成されます。サーバー・パラメータ・ファイルが存在しない場合は、CONTROL_FILES
初期化パラメータを手動で作成して、初期化パラメータ・ファイルに追加する必要があります。
データベースのデータファイルがOracle Managed Filesの場合は、文のDATAFILE
句に、そのファイルのデータベース生成ファイル名を指定する必要があります。
REDOログ・ファイルがOracle Managed Filesの場合は、NORESETLOGS
またはRESETLOGS
キーワードによって、LOGFILE
句に指定できるパラメータが決まります。
-
NORESETLOGS
キーワードを使用する場合は、Oracle Managed FilesのREDOログ・ファイル用に生成されるファイル名をLOGFILE
句に指定する必要があります。 -
RESETLOGS
キーワードを使用する場合は、REDOログ・ファイル名をCREATE DATABASE
文の場合と同様に指定できます。「データベース作成時のREDOログ・ファイルの指定」を参照してください。
Oracle Managed Filesを使用したCREATE CONTROLFILE
文の使用例については、次の項を参照してください。
関連項目:
-
CREATE CONTROLFILE
文の詳細は、『Oracle Database SQL言語リファレンス』
17.3.6.2 NORESETLOGSキーワードを使用したCREATE CONTROLFILE: 例
NORESETLOGS
キーワードを含むCREATE CONTROLFILE
文を使用して制御ファイルを作成する例を示します。
次のCREATE CONTROLFILE
文は、Oracle Managed FilesのデータファイルおよびREDOログ・ファイルを含むデータベースでALTER DATABASE BACKUP CONTROLFILE TO TRACE
文を発行したときに生成されます。
CREATE CONTROLFILE DATABASE sample LOGFILE GROUP 1 ('/u01/oradata/SAMPLE/onlinelog/o1_mf_1_o220rtt9_.log', '/u02/oradata/SAMPLE/onlinelog/o1_mf_1_v2o0b2i3_.log') SIZE 100M, GROUP 2 ('/u01/oradata/SAMPLE/onlinelog/o1_mf_2_p22056iw_.log', '/u02/oradata/SAMPLE/onlinelog/o1_mf_2_p02rcyg3_.log') SIZE 100M NORESETLOGS DATAFILE '/u01/oradata/SAMPLE/datafile/o1_mf_system_xu34ybm2_.dbf' SIZE 100M, '/u01/oradata/SAMPLE/datafile/o1_mf_sysaux_aawbmz51_.dbf' SIZE 100M, '/u01/oradata/SAMPLE/datafile/o1_mf_sys_undo_apqbmz51_.dbf' SIZE 100M MAXLOGFILES 5 MAXLOGHISTORY 100 MAXDATAFILES 10 MAXINSTANCES 2 ARCHIVELOG;
17.3.6.3 RESETLOGSキーワードを使用したCREATE CONTROLFILE: 例
RESETLOGS
キーワードを含むCREATE CONTROLFILE
文を使用して制御ファイルを作成する例を示します。
次の文は、RESETLOGS
オプションを指定したCREATE CONTROLFILE
文の例です。DB_CREATE_FILE_DEST
、DB_RECOVERY_FILE_DEST
およびDB_CREATE_ONLINE_LOG_DEST_
n
を組み合せて設定する必要があります。
CREATE CONTROLFILE DATABASE sample RESETLOGS DATAFILE '/u01/oradata/SAMPLE/datafile/o1_mf_system_aawbmz51_.dbf', '/u01/oradata/SAMPLE/datafile/o1_mf_sysaux_axybmz51_.dbf', '/u01/oradata/SAMPLE/datafile/o1_mf_sys_undo_azzbmz51_.dbf' SIZE 100M MAXLOGFILES 5 MAXLOGHISTORY 100 MAXDATAFILES 10 MAXINSTANCES 2 ARCHIVELOG;
後で、ALTER DATABASE OPEN RESETLOGS
文を発行して、REDOログ・ファイルを再作成する必要があります。これについては、「ALTER DATABASE OPEN RESETLOGS文の使用」を参照してください。使用していたログ・ファイルがOracle Managed Filesである場合、そのファイルは削除されません。
17.3.7 Oracle Managed Filesを使用したREDOログ・ファイルの作成
REDOログ・ファイルはデータベース作成時に作成されます。次のいずれかの文を発行した場合にも作成できます: ALTER DATABASE ADD LOGFILE
およびALTER DATABASE OPEN RESETLOGS
。
- ALTER DATABASE ADD LOGFILE文の使用
ALTER DATABASE ADD LOGFILE
文により、現在のREDOログに後で新しいグループを追加できます。 - ALTER DATABASE OPEN RESETLOGS文の使用
前にRESETLOGS
を指定して制御ファイルを作成しており、その際、ファイル名を指定しなかった場合、または存在しないファイル名を指定した場合は、ALTER DATABASE OPEN RESETLOGS
文を発行したときに、REDOログ・ファイルが作成されます。
関連項目:
ALTER DATABASE
文の詳細は、『Oracle Database SQL言語リファレンス』
親トピック: Oracle Managed Filesの作成
17.3.7.1 ALTER DATABASE ADD LOGFILE文の使用
ALTER DATABASE ADD LOGFILE
文を使用すると、現行のREDOログ・ファイルに後から新しいグループを追加できます。
Oracle Managed Filesを使用している場合、ADD LOGFILE
句のファイル名はオプションです。ファイル名を省略した場合は、ログ・ファイルのデフォルトの保存先にREDOログ・ファイルが作成されます。デフォルトの保存先は、「データベース作成時のREDOログ・ファイルの指定」に記載されている優先度によって決まります。
ファイル名を指定せず、Oracle Managed Filesの作成に必要な初期化パラメータが1つも指定されていない場合は、文はエラーを戻します。
Oracle Managed Filesのログ・ファイルのデフォルト・サイズは100MBです。
完全なファイル名を指定すると、REDOログ・ファイルのメンバーを引き続き追加および削除できます。
新しいREDOログ・ファイルの追加: 例
次の例では、一方のメンバーが/u01/oradata
に、もう一方のメンバーが/u02/oradata
に存在するログ・グループを作成します。各ログ・ファイルのサイズは100MBです。
初期化パラメータ・ファイルで、次のパラメータを設定します。
DB_CREATE_ONLINE_LOG_DEST_1 = '/u01/oradata' DB_CREATE_ONLINE_LOG_DEST_2 = '/u02/oradata'
SQLプロンプトから次の文を発行します。
SQL> ALTER DATABASE ADD LOGFILE;
17.3.7.2 ALTER DATABASE OPEN RESETLOGS文の使用
前にRESETLOGS
を指定して制御ファイルを作成しており、その際、ファイル名を指定しなかった場合、または存在しないファイル名を指定した場合は、ALTER DATABASE OPEN RESETLOGS
文を発行したときに、REDOログ・ファイルが作成されます。
制御ファイル内に何も指定されていない場合に、REDOログ・ファイルの格納ディレクトリを決めるルールは、「データベース作成時のREDOログ・ファイルの指定」に記載されているルールと同じです。
17.3.8 Oracle Managed Filesを使用したアーカイブ・ログの作成
アーカイブ・ログは、バックグラウンド・プロセスまたはSQL文によって作成されます。
アーカイブ・ログは、次の場合にDB_RECOVERY_FILE_DEST
の場所に作成されます。
-
ARC
バックグラウンド・プロセスまたはLGWR
バックグラウンド・プロセスがオンラインREDOログをアーカイブする場合。または、 -
ALTER SYSTEM ARCHIVE LOG CURRENT
文が発行された場合。
たとえば、次のパラメータ設定が初期化パラメータ・ファイルに含まれているとします。
DB_RECOVERY_FILE_DEST_SIZE = 20G DB_RECOVERY_FILE_DEST = '/u01/oradata' LOG_ARCHIVE_DEST_1 = 'LOCATION=USE_DB_RECOVERY_FILE_DEST'
親トピック: Oracle Managed Filesの作成
17.4 Oracle Managed Filesの操作
Oracle Managed Filesのファイル名は、既存のファイルを識別するためにファイル名が使用される場合ならいつでもSQL文で使用可能です。
これらのファイル名は、他のファイル名と同様に制御ファイルと、またバックアップおよびリカバリにRecovery Manager (RMAN)を使用している場合はRMANカタログに格納されます。これらは、データファイルおよび一時ファイルの監視に使用される通常の固定および動的パフォーマンス・ビューで参照可能です(V$DATAFILE
またはDBA_DATA_FILES
など)。
次に、データベース生成ファイル名を使用した文の例を示します。
SQL> ALTER DATABASE 2> RENAME FILE '/u01/oradata/mydb/datafile/o1_mf_tbs01_ziw3bopb_.dbf' 3> TO '/u01/oradata/mydb/tbs0101.dbf'; SQL> ALTER DATABASE 2> DROP LOGFILE '/u01/oradata/mydb/onlinelog/o1_mf_1_wo94n2xi_.log'; SQL> ALTER TABLE emp 2> ALLOCATE EXTENT 3> (DATAFILE '/u01/oradata/mydb/datafile/o1_mf_tbs1_2ixfh90q_.dbf');
Oracle Managed Filesのデータファイル、一時ファイルおよび制御ファイルは、Oracle Managed Files以外の対応するファイルと同様にバックアップおよびリストアを実行できます。データベース生成ファイル名を使用しても、エクスポート・ファイルなどの論理バックアップ・ファイルの使用には影響しません。これは特に、表領域のPoint-in-Timeリカバリ(TSPITR)およびトランスポータブル表領域のエクスポート・ファイルにとって重要です。
ファイルの削除またはファイルの名前変更の操作、およびスタンバイ・データベースに関連した操作を含むいくつかのケースでは、Oracle Managed Filesの動作が異なる場合があります。
- データファイルおよび一時ファイルの削除
データベースによって管理されていないファイルとは異なり、Oracle Managed Filesのデータファイルまたは一時ファイルを削除すると、制御ファイルからファイル名が削除されて、ファイル・システムからファイルが自動的に削除されます。 - REDOログ・ファイルの削除
Oracle Managed FilesのREDOログ・ファイルを削除すると、そのOracle Managed Filesが削除されます。削除するグループまたはメンバーを指定します。 - ファイルの名前変更
Oracle Managed Filesでは、ファイル名を変更するSQL文によって、実際のオペレーティング・システム上のファイル名が変更されることはなく、制御ファイル内の名前が変更されます。 - スタンバイ・データベースの管理
スタンバイ・データベースのデータファイル、制御ファイルおよびREDOログ・ファイルは、データベースで管理できます。プライマリ・データベースでOracle Managed Filesが使用されているかどうかは関係ありません。
親トピック: Oracle Managed Filesの使用
17.4.1 データファイルおよび一時ファイルの削除
データベースによって管理されていないファイルとは異なり、Oracle Managed Filesのデータファイルまたは一時ファイルを削除すると、制御ファイルからファイル名が削除されて、ファイル・システムからファイルが自動的に削除されます。
Oracle Managed Filesを削除する文は、次のとおりです。
-
DROP
TABLESPACE
-
ALTER
DATABASE
TEMPFILE
...DROP
これらの文を使用して、いつでもOracle Managed Filesあるいはそれ以外のファイルを削除することもできます。
-
ALTER
TABLESPACE
...DROP
DATAFILE
-
ALTER
TABLESPACE
...DROP
TEMPFILE
親トピック: Oracle Managed Filesの操作
17.4.2 REDOログ・ファイルの削除
Oracle Managed FilesのREDOログ・ファイルを削除すると、そのOracle Managed Filesが削除されます。削除するグループまたはメンバーを指定します。
次の文は、REDOログ・ファイルを削除します。
-
ALTER
DATABASE
DROP
LOGFILE
-
ALTER
DATABASE
DROP
LOGFILE
MEMBER
親トピック: Oracle Managed Filesの操作
17.4.3 ファイルの名前変更
Oracle Managed Filesでは、ファイル名を変更するSQL文によって、実際のオペレーティング・システム上のファイル名が変更されることはなく、制御ファイル内の名前が変更されます。
ファイルの名前を変更するには、次の文が使用されます。
-
ALTER
DATABASE
RENAME
FILE
-
ALTER
TABLESPACE
...RENAME
DATAFILE
この文を発行するときは、オペレーティング・システムのファイル名の規則を使用して各ファイル名を指定する必要があります。
ノート:
変更前のファイルがOracle Managed Filesで、そのファイルが存在している場合は削除されます。親トピック: Oracle Managed Filesの操作
17.4.4 スタンバイ・データベースの管理
スタンバイ・データベースのデータファイル、制御ファイルおよびREDOログ・ファイルは、データベースで管理できます。プライマリ・データベースでOracle Managed Filesが使用されているかどうかは関係ありません。
スタンバイ・データベースのリカバリでデータファイルを作成するREDOを検出したとき、そのデータファイルがOracle Managed Filesの場合は、リカバリ・プロセスによって、ローカル・ファイル・システムのデフォルトの場所に空のファイルが作成されます。これにより、管理者が操作することなく、新しいファイルのREDOが即時に適用されます。
スタンバイ・データベースのリカバリで表領域を削除するREDOを検出した場合は、ローカル・ファイル・システム内にあるOracle Managed Filesのデータファイルがすべて削除されます。プライマリ・データベースでINCLUDING DATAFILES
オプションを発行したかどうかは関係ありません。
親トピック: Oracle Managed Filesの操作
17.5 Oracle Managed Filesの使用例
使用例では、Oracle Managed Filesの使用方法を示します。
- 使用例1: 多重REDOログを含むデータベースの作成および管理
多重化されたREDOログを含むデータベースを作成および管理する例を示します。 - 使用例2: データベース領域と高速リカバリ領域を含むデータベースの作成と管理
データベース領域と高速リカバリ領域の両方を含むデータベースを作成および管理する例を示します。 - 使用例3: 既存のデータベースへのOracle Managed Filesの追加
既存データベースにOracle Managed Filesを追加する例を示します。
親トピック: Oracle Managed Filesの使用
17.5.1 使用例1: 多重REDOログを含むデータベースの作成および管理
多重化されたREDOログを含むデータベースを作成および管理する例を示します。
この使用例では、DBAが、データファイルとREDOログ・ファイルが異なるディレクトリに存在するデータベースを作成します。REDOログ・ファイルと制御ファイルは多重化されています。データベースはUNDO表領域を使用し、デフォルト一時表領域を持っています。このデータベースの作成とメンテナンスに関するタスクは、次のとおりです。
親トピック: Oracle Managed Filesの使用例
17.5.2 使用例2: データベース領域と高速リカバリ領域を含むデータベースの作成と管理
データベースと高速リカバリ領域の両方を含むデータベースを作成および管理する例を示します。
この使用例では、DBAが、制御ファイルおよびREDOログ・ファイルを多重化するデータベースを作成します。アーカイブ・ログとRMANによるバックアップは、高速リカバリ領域に作成されます。このデータベースの作成とメンテナンスに関するタスクは、次のとおりです。
親トピック: Oracle Managed Filesの使用例
17.5.3 使用例3: 既存のデータベースへのOracle Managed Filesの追加
既存データベースにOracle Managed Filesを追加する例を示します。
この例では、Oracle Managed Filesが含まれていない既存のデータベースに対して、DBAがOracle Managed Filesを含む新しい表領域を作成し、/u03/oradata
ディレクトリにその表領域を配置しようとしていると想定しています。
親トピック: Oracle Managed Filesの使用例