ヘッダーをスキップ

Oracle Database 2日でデータベース管理者
11g リリース1(11.1)

E05759-03
目次
目次
索引
索引

戻る 次へ

6 データベース記憶域構造の管理

この章では、Oracle Enterprise Manager Database Control(Database Control)を使用してデータベースの記憶域構造を表示および管理する方法について説明します。この章の内容は次のとおりです。

データベース記憶域構造について

Oracle Databaseは物理構造および論理構造から構成されます。データをディスクに保存する物理ファイルなどの物理構造はオペレーティング・システムで表示することも操作することも可能です。

論理構造はOracle Databaseによって作成され、認識されますが、オペレーティング・システムとは関係がありません。データベースにおける主要な論理構造(表領域)には、物理ファイルがあります。アプリケーション開発者またはユーザーは、論理構造を意識することはありますが、物理構造には注意を払いません。DBAはデータベースの物理構造と論理構造の関係を理解する必要があります。

図6-1は、論理構造と物理構造の関係を示しています。この図は、フラッシュ・リカバリ領域にオプションで保持されるリカバリ関連の構造も示しています。詳細は「フラッシュ・リカバリ領域」を参照してください。

図6-1    Oracle Database記憶域構造


画像の説明

Oracle Databaseでは、構造管理の大部分を自動化できます。Oracle Enterprise Manager Database Control(Database Control)によってWebベースのGraphical User Interface(GUI)が提供され、より簡単にデータベースを管理および監視できます。

データベース記憶域構造を表示するには、サーバー・サブページの「記憶域」セクションを参照してください。図6-2のリンクをクリックすると、記憶域ページにアクセスできます。

図6-2    記憶域オプション


画像の説明

この項では、様々なデータベース記憶域構造に関するバックグラウンド情報を提供します。内容は次のとおりです。

制御ファイルの概要

制御ファイルにはデータベースの物理コンポーネントが追跡されます。これはデータベースを使用してデータベースが使用したすべての他のファイルを検索するルート・ファイルです。制御ファイルは重要であるため、制御ファイルを多重化することをお薦めします。つまり、制御ファイルには複数の同一のコピーがあります。Oracle Database Configuration Assistant(DBCA)で作成されたデータベースの場合、制御ファイルの3つのコピーが自動的に作成され、お互いに同期化されます。

任意の制御ファイルに問題が発生した場合、データベースは使用できなくなります。ただし、制御ファイルのコピーがあれば、データベースを停止して、問題が発生した制御ファイルをコピーから再作成し、データベースを再起動できます。他のオプションとして、CONTROL_FILES初期化パラメータから問題が発生した制御ファイルを削除し、残っている制御ファイルを使用してデータベースを再起動する方法があります。

参照:

  • 制御ファイルの詳細は、『Oracle Database管理者ガイド』を参照してください。

 

オンラインREDOログ・ファイルについて

すべてのOracle Databaseには2つ以上のオンラインREDOログ・ファイルのセットがあります。REDOログ・ファイルのセットは総称してデータベースのREDOログとして知られています。REDOログはREDOレコードと呼ばれるREDOエントリから構成されています。

REDOログには、データの変更内容のコピーが格納されます。障害により、バックアップからデータファイルをリストアする必要がある場合、リストアされたデータファイルにはない最新の変更はREDOファイルから取得できるため、作業が失われることはありません。REDOログはハードウェア障害、ソフトウェア障害またはメディア障害の発生後、データベースのリカバリに使用されます。REDOログそのものを含めむ障害に対して備えるには、2つ以上のオンラインREDOログの同一のコピーを別々のディスクに保持できるよう、REDOログを多重化します。

データベースREDOログはREDOログ・ファイルのグループから構成されます。1グループはREDOログ・ファイルとその多重コピーから構成されます。個別のコピーはそれぞれグループのメンバーとみなされます。各グループは「グループ1」のように番号で定義されます。

図6-3は、2つのメンバーを持つREDOログ・グループが3つ存在するデータベース構成を表しています。可用性を最大限にするため、各グループのメンバーは別々のディスクに格納されます。たとえば、グループ1のメンバーはREDOログ・ファイルA_LOG1およびB_LOG1です。

図6-3    オンラインREDOログ・グループおよびそのメンバー


画像の説明

データベース・ログ・ライター・プロセス(LGWR)は、そのグループのログ・ファイルが記憶域サイズの制限に達するまで、またはログ・スイッチ操作が要求されるまで、メモリー・バッファのREDOレコードをREDOログ・グループに書き込みます。次に、LGWRプロセスでは次のログ・グループに対して書込みを行います。最も古いグループが最新のREDOレコードによって上書きされるように、このアクションは循環方式で実行されます。

参照:

 

アーカイブREDOログ・ファイルについて

REDOログをアーカイブする際、上書きされる前にREDOログ・ファイルを別の場所にコピーします。このようにコピーされたファイルはアーカイブREDOログ・ファイルと呼ばれ、スタンバイ・データベースなどの複数の場所にアーカイブできます。

これらのアーカイブREDOログ・ファイルにより、保存してリカバリに使用できるREDOデータの量が増えます。アーカイブREDOログ・ファイルは、データベースのバックアップを、バックアップ時点から現時点までリカバリするために必要です。データベースに対するアーカイブは、有効にも無効にもできますが、有効にすることを強くお薦めします。また、フラッシュ・リカバリ領域にアーカイブREDOログ・ファイルを書き込むようにデータベースを構成することをお薦めします。

参照:

  • アーカイブREDOログの詳細は、『Oracle Database管理者ガイド』を参照してください。

  • REDOログのアーカイブの有効化の詳細は、「リカバリ設定の構成」を参照してください。

  • フラッシュ・リカバリ領域のバックグラウンド情報の詳細は、「フラッシュ・リカバリ領域」を参照してください。

 

ロールバック・セグメントについて

Oracle Databaseの以前のリリースでは、ロールバック・セグメントは、データベースのUNDO情報を追跡するために使用されるデータベース構造でした。優先されるUNDO情報の管理方法はUNDO表領域を利用したものです。詳細は、「UNDOデータの管理」を参照してください。


注意:

Oracle Databaseでは、SYSTEMロールバック・セグメントを使用して、システム・トランザクションを実行します。データベースが作成され、インスタンスの起動時に常にオンラインである場合、自動的にSYSTEMロールバック・セグメントが作成されます。また、SYSTEM表領域に存在します。SYSTEMロールバック・セグメントを管理する操作は必要ありません。 


データファイルの概要

データファイルはデータベース内にデータを保存するオペレーティング・システム・ファイルです。データは、その他のプログラムでは読み込むことができないOracle固有の形式でこれらのファイルに書き込まれます。一時ファイルは一時表領域にのみ関連付けられたデータファイルの特殊なクラスです。

データファイルは次のコンポーネントに分類できます。

表領域について

データベースは、関連する論理構造(表、ビュー、その他のデータベース・オブジェクトなど)をグループ化した、表領域と呼ばれる論理記憶域の単位に分割されます。たとえば、すべてのアプリケーション・オブジェクトは単一の表領域にグループ化され、メンテナンス操作が簡素化されます。

表領域は1つ以上の物理データファイルから構成されます。データベース・オブジェクトは表領域の物理データファイルに格納される表領域に割り当てられます。

Oracle Databaseを作成すると、SYSTEMおよびUSERSなどの表領域はすでに存在しています。

表領域は記憶域にデータの位置を物理的に決定するための方法です。表領域を作成するデータファイルを定義するとき、これらのファイルに対して記憶域を指定します。たとえば、指定したホスト・ディレクトリ(特定のディスク・ボリュームのこと)または指定した自動ストレージ管理ディスク・グループとして特定の表領域にデータファイルの場所を指定します。スキーマ・オブジェクトはその表領域に割り当てられ、指定された記憶域の場所に位置を決定します。表領域はバックアップおよびリカバリのユニットの提供も行います。Oracle Databaseのバックアップおよびリカバリの特長は表領域のレベルでバックアップまたはリカバリを有効にすることです。

表6-1に、データベースに含まれている一部の表領域を示します。

表6-1    表領域および説明 
表領域  説明 

EXAMPLE 

この表領域には、Oracle Databaseに含まれているサンプル・スキーマがあります。サンプル・スキーマにより、共通のプラットフォームが例として提供されます。オラクル社のドキュメントおよび入門資料には、サンプル・スキーマに基づいた例が含まれています。 

SYSTEM 

この表領域は、データベース作成時に自動的に作成されます。Oracle Databaseはこの表領域を使用してデータベースを管理します。表領域にはデータ・ディクショナリ(特定のデータベース対象の読取り専用の参照として使用される主な表およびビューをまとめたもの)があります。また表領域にはデータベースに関する管理情報を含む様々な表およびビューがあります。これらはすべてSYSスキーマに存在し、SYSユーザーまたは該当する権限を持つその他の管理ユーザーのみがアクセスできます。 

SYSAUX 

これはSYSTEM表領域への補助表領域です。

SYSTEM表領域またはOracle Database 10g よりも前にリリースした専用表領域を使用していた一部のコンポーネントおよび製品は、現在SYSAUX表領域を使用しています。SYSAUXにより、SYSTEM表領域での負荷が削減されました。また、監視および保持に使用される表領域が少なくなったため、メンテナンスの負担が軽減されました。Oracle Database 10g 以上のすべてのデータベースには、SYSAUX表領域があります。

インストール中にSYSAUXをデフォルトの表領域として使用するコンポーネントには、自動ワークロード・リポジトリ、Oracle Streams、Oracle TextおよびDatabase Controlリポジトリがあります。詳細は、『Oracle Database管理者ガイド』を参照してください。 

TEMP 

この表領域には、SQL文の処理中に生成された一時データが格納されています。たとえば、この表領域は問合せの格納に使用されます。すべてのデータベースに一時表領域が存在し、ユーザーの一時表領域として割り当てられます。事前構成されたデータベースでは、TEMP表領域はデフォルトの一時表領域に指定されています。ユーザー・アカウントの作成時に一時表領域が指定されていない場合、Oracle Databaseによってこの表領域がユーザーに割り当てられます。 

UNDOTBS1 

これはデータベースがUNDO情報の保存に使用するUNDO表領域です。詳細は、「UNDOデータの管理」を参照してOracle DatabaseがUNDO表領域を使用する方法を理解してください。どのデータベースにもUNDO表領域が必要です。 

USERS 

この表領域は永続的なユーザー・オブジェクトおよびデータの格納に使用します。すべてのデータベースが、TEMP表領域のような、ユーザーに割り当てられる永続的なユーザー・データのための表領域を持つ必要があります。そうでない場合は、ユーザー・オブジェクトはSYSTEM表領域に作成されますが、これはあまりよい方法ではありません。事前構成されたデータベースでは、USERSはすべての新しいユーザーのデフォルト表領域として指定されます。 

新規の表領域を作成して、ユーザーおよびアプリケーション・データ要件をサポートできます。表領域作成時に、次のパラメータを設定します。

ローカル管理表領域とディクショナリ管理表領域の比較

表領域における領域管理では、使用可能な(空き)領域と使用済領域が追跡され、データの挿入時または削除時に効率よく領域が割り当てられます。ディクショナリ管理表領域ではなくローカル管理表領域を作成することをお薦めします。ディクショナリ管理表領域は古い領域管理技術で、ローカル管理表領域ほど効率がよくありません。

ローカル管理表領域はデータ・ディクショナリではなく表領域の中に領域割当て情報を保存するため、パフォーマンスが向上します。Oracle Databaseはデフォルトでは、新規に作成された表領域が自動セグメント管理(さらにパフォーマンスを向上させる機能)によってローカルに管理されるように設定します。

表領域のタイプ

表領域には次の3つのタイプがあります。

表領域のステータス

表領域ステータスを次のように設定できます。

表領域の自動拡張

表領域が制限サイズに達したとき、指定した量まで自動的に拡張されるように設定できます。自動拡張を有効化していないと、表領域がクリティカルまたは警告のしきい値サイズに達したときに警告されます。クリティカルまたは警告のしきい値パラメータには、デフォルト値があり、この値はいつでも変更できます。自動拡張された表領域が指定した制限サイズに近づいているときにもアラートが発生します。サイズのアラートに対応するには、表領域のサイズを手動で増やします。このためには、1つ以上の表領域データファイルのサイズを増やすか、または表領域に別のデータファイルを追加します。


注意:

表領域に対して自動拡張というのは一般的ですが、自動拡張はデータファイルのプロパティであって表領域のプロパティではありません。つまり、表領域を構成するデータファイルを作成するときに、これらのデータファイルを自動的に拡張するかどうかを指定します。データファイルを自動拡張する表領域を自動拡張表領域とみなします。自動拡張データファイルの最大サイズを指定できます。 


その他の記憶域構造について

Oracle Databaseに存在する他の記憶域構造は初期化パラメータ・ファイル、パスワード・ファイルおよびバックアップ・ファイルを含みます。

この項の内容は次のとおりです。

初期化パラメータ・ファイル

起動時のOracleインスタンスによって初期化パラメータが使用され、データベースのランタイム・プロパティおよびリソースが決定されます。一部のパラメータは、データベース実行中に設定または変更できます。他の初期化パラメータは、変更を有効にするために再起動が必要です。起動時のインスタンスによって初期化パラメータが使用され、データベースのランタイム・プロパティおよびリソースが決定されます。一部のパラメータは、データベース実行中に設定または変更できます。他の初期化パラメータは、変更を有効にするために再起動が必要です。

参照:

 

パスワード・ファイル

データベースではパスワード・ファイルを使用して、SYSDBAまたはSYSOPER接続権限を持つ管理ユーザーを認証できます。これらの権限によりDBAは、データベースを起動および停止し、その他の高水準の管理タスクを実行できます。このパスワード・ファイルはデータベース自身の外部にあるため、データベースが起動されていないときにDBA認証を有効化します。

Oracle Databaseのインストール・プロセスの一部としてDBCAを起動する場合、DBCAはSYSユーザーの1エントリにつき、1つのパスワード・ファイルを作成します。SYSDBAをユーザーに付与することにより、自動的にパスワード・ファイルもユーザーに追加されます。


注意:

Oracle Databaseはオペレーティング・システム認証を使用して、SYSDBAまたはSYSOPER権限でユーザーを認証することもできます。 


参照:

 

バックアップ・ファイル

バックアップ・ファイルは、厳密にはデータベース・ファイルではありません。データの損失を伴う障害が発生した場合にデータベースのリカバリに使用可能な、特定の形式でのデータベースのコピーです。

参照:

 

データベース記憶域構造の情報の表示

この項では、Oracle Enterprise Manager Database Control(Database Control)の様々なデータベース記憶域構造に関する情報の表示について説明します。内容は次のとおりです。

制御ファイルの情報の表示

Database Controlを使用して、制御ファイルの位置情報とステータス情報を表示します。

制御ファイルの情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで、「制御ファイル」をクリックします。

    一般サブページが表示された制御ファイル・ページが表示されます。このページはデータベースに多重制御ファイルが含まれているかどうか表示します。拡張サブページおよびレコード・セクション・サブページでは制御ファイルの詳細な情報を知ることができます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

オンラインREDOログ・ファイルの情報の表示

Database Controlを使用して、オンラインREDOログ・ファイルのステータス情報と多重化情報を表示します。

REDOログ・ファイル情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「REDOログ・グループ」をクリックします。

    REDOログ・グループ・ページが表示されます。このページにはデータベースのREDOログ・グループの属性が示されます。

    REDOログ・グループにメンバーが1つしか含まれない場合は多重化されません。REDOログ・グループの「ステータス」属性を確認してください。グループのステータスが「現行」の場合は、ログ・ライターによってディスクへの書込みが進行していることを表しています。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. (オプション)「グループ」列でグループ番号をクリックし、REDOログ・グループ・メンバーの情報を表示します。

アーカイブ・ログ情報の表示

Database Controlを使用して、アーカイブREDOログ・ファイルのステータス情報を表示します。


注意:

ARCHIVELOGモードでデータベースを設定しないと、アーカイブREDOログ・ファイルは存在しません。 


アーカイブ・ログ情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで、「アーカイブ・ログ」をクリックします。

    アーカイブ・ログ・ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

データファイル情報の表示

Database Controlを使用して、データファイルのステータス情報と位置情報を表示します。

データファイルの情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで、「データファイル」をクリックします。

    データファイル・ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. (オプション)データファイルを選択し、「表示」をクリックして、データファイルの詳細な属性を表示します。「表領域」列の表領域名をクリックして、データファイルと関連付けられた表領域の属性を表示することもできます。

表領域の情報の表示

Database Controlを使用して、表領域の構成、サイズおよびステータス情報を表示します。

表領域の情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    表領域ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

一般的なデータベース記憶域タスクの実行

データベースの表領域の要件は、データベースにデータが追加されるにつれて変化します。DBAとして表領域とデータベースの記憶域を効果的に管理するために、次のタスクの実行方法を理解しておく必要があります。

表領域の作成

表領域を追加作成してユーザー・データを格納できます。このため、すべてのデータがUSERS表領域内に格納されているとはかぎりません。次のような場合に表領域を追加作成します。

表領域を作成するには、次のようにします。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    図6-4に示す、表領域ページが表示されます。

    図6-4    表領域ページ


    画像の説明

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. 次の操作を1つ実行します。

    1. 新しい表領域を作成するには、「作成」(スクリーンショットには示されていません)をクリックします。

    2. 「選択」列で既存の表領域と類似する表領域を作成するには、属性を再作成する表領域を選択してください。「アクション」リストで、「類似作成」を選択して、「実行」をクリックします。

    表領域の作成ページが表示され、一般サブページが表示されます。


    画像の説明

  5. 「名前」フィールドに表領域の名前を入力します。

  6. 「エクステント管理」セクションで「ローカル管理」を選択します。

    詳細は、「ローカル管理表領域とディクショナリ管理表領域の比較」を参照してください。

  7. 「タイプ」セクションで、「永続」を選択します。

    詳細は、「表領域のタイプ」を参照してください。

  8. 「ステータス」セクションで「読取り/書込み」を選択します。

    詳細は、「表領域のステータス」を参照してください。

  9. 「データファイル」セクションで「追加」をクリックして、表領域に1つ以上のデータファイルを追加します。

    データファイルの追加ページが表示されます。


    注意:

    「ビッグファイル表領域の使用」を選択した場合、表領域に含まれるデータファイルは1つのみです。ビッグファイル表領域は、自動ストレージ管理またはストライプ化、RAIDおよび動的に拡張可能な論理ボリュームをサポートしている他の論理ボリューム・マネージャを使用する大規模データベースで使用されます。 


  10. 「ファイル名」フィールドに、ファイル名を入力します。「ファイル・ディレクトリ」および「ファイル・サイズ」のデフォルトを許可します。

  11. 「記憶域」セクションで次の手順を実行します。

    1. 「フルになった場合に自動的にデータファイルを拡張(AUTOEXTEND)」を選択します。

    2. 10 MBなど適切な増分を設定します。

      これは多くの記憶域が必要な際に、データファイルに追加するディスク領域の量です。

    3. 最大ファイル・サイズの場合、使用可能な記憶域に応じて次のいずれかを実行します。

      • 「無制限」を選択し、無制限でファイルが大きくなることを許可します。

      • 「値」を選択し、KB、MB、GBまたはTBに値を入力します。

  12. 「続行」をクリックします。

    表領域の作成ページに戻ります。

  13. (オプション)ページ上部付近にある「記憶域」リンクをクリックして、記憶域サブページを表示します。このサブページのすべてのデフォルト設定を調べます。

    このページの詳細は、オンライン・ヘルプを参照してください。

  14. 「OK」をクリックし、表領域を追加します。

    表領域ページに戻り、新しく作成された表領域が表示されます。

    参照:

     

表領域の変更

Oracle Enterprise Manager Database Control(Database Control)を使用して、表領域を変更できます。たとえば、データファイル・サイズの増加、および他のデータファイルの追加によって表領域を拡張したり、自動拡張を設定したり、領域使用率のアラートしきい値を変更したり、ステータスをオフラインにすることができます。クリティカルまたは警告アラートを受け取ったとき、(アラートが使用可能な領域に関することの場合は)領域を拡張するか、または(アラートがデータの破損その他の深刻なエラーに関することの場合は)ステータスをオフラインにしてリカバリする必要があります。

この項の内容は次のとおりです。

表領域を自動拡張に設定

この項では、制限サイズに達した場合、自動的に拡張するように表領域を設定する方法について説明します。次の手順では、表領域が以前は自動拡張する表領域ではなかった場合を想定します。

自動拡張する表領域を設定するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    表領域ページが表示されます。

    詳細は、図6-4を参照してください。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. 自動拡張を有効にする表領域を選択し、「編集」をクリックします。

    表領域の編集ページが表示されます。

  5. 表領域に関連付けられている最初のデータファイルを選択し、「編集」をクリックします。

    データファイルの編集ページが表示されます。

  6. 「記憶域」セクションで次の手順を実行します。

    1. 「フルになった場合に自動的にデータファイルを拡張(AUTOEXTEND)」を選択します。

    2. 10 MBなど適切な増分を設定します。

      これは多くの記憶域が必要な際に、データファイルに追加するディスク領域の量です。

    3. 最大ファイル・サイズの場合、使用可能な記憶域に応じて次のいずれかを実行します。

      • 「無制限」を選択し、無制限でファイルが大きくなることを許可します。

      • 「値」を選択し、KB、MB、GBまたはTBに値を入力します。

  7. 「続行」をクリックします。

    表領域の編集ページに戻ります。

  8. 表領域に関連付けられた各データファイルを追加するには、手順5から手順7を繰り返します。

  9. 「適用」をクリックします。

    確認メッセージが表示されます。

表領域の領域使用量アラートしきい値の変更

表領域に対する領域使用率がしきい値に達した場合、Database Controlはアラートを受け取ります。領域使用率のアラートは2種類あり、「警告」は、表領域の使用量が低い場合に、「クリティカル」は、表領域がほぼ一杯でアクションがすぐに必要な場合に発行されます。

警告および限界のアラートの両方に関して、アラートしきい値の指定方法は次の2つです。

表領域に対する警告および限界のアラートの両方に関して、使用されている領域のしきい値または空き領域のしきい値のいずれか、または両方を有効にできます。

表領域の領域使用量アラートしきい値を変更するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    表領域ページが表示されます。

    詳細は、図6-4を参照してください。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. 変更するしきい値を持つ表領域を選択し、「編集」をクリックします。

    表領域の編集ページ、および一般サブページが表示されます。

  5. 「しきい値」をクリックし、しきい値サブページを表示します。


    画像の説明

  6. 「使用済領域(%)」セクションで、次のいずれかを実行します。

    • デフォルトしきい値を許可します。

    • 「しきい値の指定」を選択し、「警告(%)」のしきい値および「クリティカル(%)」のしきい値を入力します。

    • 「しきい値の無効化」を選択し、すべてのしきい値を無効にします。

  7. 「空き領域(MB)」セクションで、次のいずれかを行います。

    • デフォルトしきい値を許可します。

    • 「しきい値の指定」を選択し、「警告(MB)」のしきい値および「クリティカル(MB)」のしきい値を入力します。

    • 「しきい値の無効化」を選択し、残りの空き領域のしきい値を無効にします。

  8. 「適用」をクリックします。

    確認メッセージが表示されます。

表領域をオフライン化

次のような場合、表領域をオフライン化する場合があります。

表領域をオフライン化するには、次のようにします。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    表領域ページが表示されます。

    詳細は、図6-4を参照してください。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. オフライン化する表領域を選択し、「編集」をクリックします。

    表領域の編集ページが表示されます。

  5. 「ステータス」セクションで「オフライン」を選択し、「オフライン・モード」リストから選択後、「適用」をクリックします。

    このページの選択内容の詳細を確認するには、「ヘルプ」をクリックします。

    確認メッセージが表示されます。


    注意:

    表領域をオンラインに戻し、このページに戻るには、「ステータス」セクションの下の「読取り/書込み」をクリックします。 


    参照:

    • 表領域のオフライン化の詳細、およびデータファイルの名前の変更または再配置の詳細は、『Oracle Database管理者ガイド』を参照してください。

     

表領域の削除

表領域が削除された後、表領域内のオブジェクトおよびデータは使用できません。これらをリカバリすることは時間のかかるプロセスです。表領域を削除する前後にバックアップを実行することをお薦めします。

表領域を削除するには、次のようにします。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「表領域」をクリックします。

    表領域ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. 削除する表領域を選択し、「削除」をクリックします。

    Database Controlでは、表領域およびディスクから関連付けられたデータファイルを削除する確認を求められます。

  5. 「はい」をクリックし、表領域を削除します。

    参照:

     

未使用領域の再利用について

この項では、データベース内の再利用可能な未使用領域に関するバックグラウンド情報を提供し、この領域を再利用する方法について説明します。内容は次のとおりです。

未使用領域の再利用について

時間の経過とともに、表領域内のオブジェクトの挿入、更新および削除(DML操作)を実行していると、個々には再利用できるほど大きくない空き領域の断片が作成されます。これらの空き領域をまとめてみると、大量の領域が無駄になっている場合があります。オブジェクトが点在していると、問合せおよびDML操作中にパフォーマンスが低下する可能性があります。

Oracle Databaseでは、次の2つのオンライン操作で空き領域を再利用できます。この操作は、操作続行中に、影響を受けるオブジェクトに対して問合せまたはDMLをブロックしない操作です。

セグメント・アドバイザでは、大量の再利用可能な未使用領域を持つ、縮小または再編成するセグメントの推奨事項が生成されます。

参照:

  • オンラインでのセグメントの縮小およびオンラインでの表の再定義の詳細は、『Oracle Database管理者ガイド』を参照してください。

 

セグメント・アドバイザについて

セグメント・アドバイザは、再利用可能な未使用領域を持つデータベース・オブジェクトを特定します。使用率と増加に関する統計の検討、およびオブジェクトのデータのサンプリングを行うことで、分析を実行します。デフォルトでは、セグメント・アドバイザはすべてのメンテナンス期間中に一定の間隔で自動的に実行するよう構成されています。セグメント・アドバイザを手動で実行することもできます。

定期的に実行するセグメント・アドバイザ・タスクを自動セグメント・アドバイザと呼びます。アドバイザの実行結果は、セグメント・アドバイザの推奨事項として、データベース・ホームページの「領域サマリー」セクションにまとめられます。詳細は、図6-5を参照してください。

自動セグメント・アドバイザの実行中は、データベース内のセグメントのサブセットのみが分析されます。特定のセグメントに再利用可能な未使用領域があると考えられる場合でも、それらのセグメントはセグメント・アドバイザの推奨事項としては表示されず、自動セグメント・アドバイザはそれらを分析に選択しない可能性があります。そのようなセグメントでは、随時手動でセグメント・アドバイザを実行できます。自動セグメント・アドバイザが分析でどのように表領域およびセグメントを選択するかの詳細は、『Oracle Database管理者ガイド』を参照してください。

セグメント・アドバイザの推奨事項

セグメント・アドバイザの推奨事項は表領域ごとにグループ化されています。表領域名のみ、Database Controlのセグメント・アドバイザ推奨ページに表示されます。表領域に、縮小または再編成を推奨されたセグメントが含まれる場合、表領域はセグメント・アドバイザ推奨ページに表示されます。このページでは、各表領域の再利用可能な領域の量が見積もられます。表領域の推奨事項の詳細をリクエストする場合、Database Controlでは、推奨事項が生成された表領域にセグメントが表示されます。

詳細は、図6-6および図6-7を参照してください。

セグメントに対する推奨事項は縮小操作または再編成操作のいずれかです。セグメントの表領域をデフォルトの自動セグメント領域管理を使用するローカル管理として作成した場合、「セグメント・アドバイザ」により、縮小が不可能なタイプではないセグメントに対して縮小が推奨されます。このようなセグメントの例はファンクションベースの索引がある表です。オンラインでのセグメントの縮小ができない場合、または表領域がディクショナリ管理であるか手動セグメント領域管理で作成された場合は、「セグメント・アドバイザ」により再編成が推奨されます。

参照:

  • メンテナンス期間の詳細は、『Oracle Database管理者ガイド』を参照してください。

 

セグメント・アドバイザ推奨および再利用領域の表示

各セグメント・アドバイザ推奨には、クリックして領域再利用処理を開始できるボタンが含まれます。領域再利用はオンライン・プロセスであり多くのリソースを消費するため、オフピーク時に領域を再利用することをお薦めします。

セグメント・アドバイザ推奨および再利用領域を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. 「領域サマリー」セクションで、「セグメント・アドバイザ推奨」の横にある数値リンクをクリックします。

    図6-5    ホームページの「領域サマリー」セクション


    画像の説明

    セグメント・アドバイザ推奨ページが表示され、セグメント・アドバイザの最新の自動および手動の稼働から、推奨事項が表示されます。

    図6-6    セグメント・アドバイザ推奨ページ


    画像の説明

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  3. (オプション)「表示」リストで「最後の自動実行からの推奨事項」を選択して、自動実行された直近のセグメント・アドバイザによる推奨事項のみを表示します。

  4. 表領域を選択し、「推奨事項の詳細」をクリックします。

    表領域の推奨事項の詳細ページが表示されます。オンラインでのセグメントの縮小または再編成を推奨する表領域のセグメントがリストされています。

    図6-7    セグメント・アドバイザの推奨事項の詳細ページ


    画像の説明

  5. (オプション)「スキーマ」「セグメント」「パーティション」または「最小再利用可能領域」フィールドに検索基準を入力して、「検索」をクリックし、セグメント・リストに表示されているセグメントの数を削減します。

  6. 各セグメントの推奨事項を確認し、次に進みます。

    • 任意のセグメントの推奨事項を再編成する必要がある場合、SQL*Plusを使用して、DBMS_REDEFINITION PL/SQLパッケージからサブプログラムを実行し、セグメントの再編成を開始します。方法は、『Oracle Database管理者ガイド』を参照してください。

    • 任意のセグメントの推奨事項を縮小する必要がある場合、該当するセグメントに対して手順7から手順12を実行します。

  7. 次のいずれかを実行し、縮小する1つ以上のセグメントを選択します。

    • 単一のセグメント内の領域を再要求するには、そのセグメントの「推奨」列の下の「縮小」をクリックします。

    • 1つ以上のセグメントを縮小するには、セグメントを選択し、「実装」をクリックします。

  8. セグメントの縮小: オプション・ページで「セグメントの圧縮と領域の解放」を承認します。

    このオプションにより空き領域を表領域に戻します。空き領域を表領域に解放しない場合は、「セグメントの圧縮」を選択します。後で縮小プロセスを再び実行して、空き領域を解放できます。


    注意:

    現在実行中の長時間実行問合せに縮小の対象となるセグメントが含まれている可能性がある場合は、「セグメントの圧縮」を選択します。縮小操作の完了前に起動した長時間実行問合せは、再生されたブロックを読み取ろうとすることがあります。その場合はエラーが発生します。手順10で縮小操作をオフピーク時にスケジュールすることも可能です。 


  9. 「実装」をクリックします。

    セグメントの縮小: スケジュール・ページが表示されます。

  10. ジョブ名を入力、または選択したジョブ名に置き換えます。「開始」ヘッダーの「即時」を選択します。

    縮小操作はリソースを集中させる可能性があるため、「後で」を選択し、オフピーク時の操作のスケジュールを設定できます。

  11. 「発行」をクリックします。

    スケジューラのジョブ・ページが表示され、実行中サブページに縮小ジョブが示されます。

  12. 「リフレッシュ」をクリックし、ジョブが実行中サブページに表示されなくなるまでページを更新します。

    履歴サブページまたはすべてサブページに切り替えて、完了したジョブのステータスを表示できます。

セグメント・アドバイザの手動実行

セグメント・アドバイザを手動で実行します。自動セグメント・アドバイザによって選択されないオブジェクトを分析する場合、または表領域上の推奨事項を最新にする場合に有効です。

参照:

  • セグメント・アドバイザの実行方法の詳細は、『Oracle Database管理者ガイド』を参照してください。

 

オンラインREDOログの管理

この項では、より一般的なREDOログ管理作業について説明します。内容は次のとおりです。

REDOログの多重化

REDOログを多重化することをお薦めします。多重化により、インスタンス障害やメディア障害の場合にデータを保護できます。

REDOログを多重化するには、各REDOログ・グループにメンバーを追加する必要があります。REDOログ・グループが左右対称になる必要はありませんが、すべてのグループが同じ数のメンバーを持つことをお薦めします。単一のデータベースは2つ以上のREDOログ・グループを持つ必要があります。


注意:

REDOログを多重化する場合、データベースの実行I/Oの量を増やす必要があります。構成によっては、データベースのパフォーマンス全体に影響が及ぶ可能性もあります。 


REDOログを多重化するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「REDOログ・グループ」をクリックします。

    REDOログ・グループ・ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. グループを選択し、「編集」をクリックします。

    REDOログ・グループの編集ページが表示されます。

  5. 「追加」をクリックします。

    REDOログ・メンバーの追加ページが表示されます。

  6. 「ファイル名」フィールドで、新しいREDOログ・メンバーのファイル名を入力します。

    たとえば、既存のメンバー・ファイル名がREDO01.logの場合、このメンバーをREDO01a.logと指定します。

  7. 「ファイル・ディレクトリ」フィールドで、ファイル・ディレクトリを入力するか、デフォルトを許可します。

    同一ディレクトリ内でこのファイルを作成できますが、各メンバーを別々のディスク・ドライブに保存しておくことをお薦めします。そうすることで、ドライブ障害があった場合もメンバーにアクセスできます。

  8. 「続行」をクリックし、次に「適用」をクリックして変更を許可します。

    確認メッセージが表示されます。

  9. ページ上部の「REDOログ・グループ」リンクをクリックしREDOログ・グループ・ページに戻ります。

  10. すべての既存のログ・グループに対して、手順4から手順9を繰り返します。

ログ・ファイルの切替え

ログ・スイッチが発生すると、ログ・ライター(LGWR)・プロセスは、現在のREDOログ・グループへの書込みを停止し、使用可能な次のREDOログ・グループへの書込みを開始します。現在のREDOグループを非アクティブにして、REDOログのメンテナンス操作に使用できるようにするため、ログ・スイッチを強制的に実行することができます。たとえば、現在のREDOログ・グループを削除するには、REDOログ・グループを非アクティブにしないと削除できません。また、グループのメンバーが完全に一杯になる前に、現在のREDOログ・グループを特定の時点でアーカイブする必要がある場合も、ログ・スイッチを強制的に実行します。このオプションは、一杯になるまでに時間がかかる、サイズが大きなREDOログ・ファイルを使用した構成に便利です。

ログ・ファイルを切り替えるには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「記憶域」セクションで「REDOログ・グループ」をクリックします。

    REDOログ・グループ・ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。

  4. 「アクション」リストで、「ログ・ファイルの切替え」を選択して「実行」をクリックします。

    確認メッセージが表示されます。グループのステータスはCurrentからActiveに変更され、リストにある次のグループのステータスがInactiveからCurrentに変更されます。

UNDOデータの管理

Oracle Databaseリリース11g から、Oracle DatabaseではUNDOが自動的に管理されるようになりました(デフォルトのインストールの場合)。通常、DBAの介入は不要です。ただし、Oracle Flashback操作を使用している場合は、フラッシュバック操作の成功を保証するために、いくつかのUNDO管理タスクを実行する必要があります。

この項では、UNDOデータの管理に関するバックグラウンド情報を提供し、UNDOデータの管理方法について説明します。内容は次のとおりです。

UNDOデータについて

トランザクションによりデータが変更される場合、変更前に元のデータがコピーされます。変更済データのオリジナル・コピーはUNDOデータと呼ばれます。次の理由から、この情報は保存しておく必要があります。

UNDO表領域

自動UNDO管理により、UNDOデータは表領域に格納されます。UNDO表領域には、永続表領域のプロパティの他に追加のプロパティがいくつかあります。複数のUNDO表領域が存在しても構いませんが、Oracleインスタンスに対してアクティブにできるのは1つのみです。

DBCAでデータベースを作成すると、UNDOTBS1という名前の自動拡張UNDO表領域が作成されます。このUNDO表領域の最大拡張サイズは35GBです。

UNDO保存

Oracle Databaseでは、アクティブ・トランザクションで使用されているUNDOデータが、そのトランザクションがコミットされるまで上書きされないことが自動的に保証されます。トランザクションのコミット後、そのUNDOデータが占有している領域は再利用または上書き可能になります。この場合、UNDO表領域の領域が不足すると、そのUNDOデータは上書きされる可能性があります。

トランザクションのコミット後も、Oracle Flashback機能の正常な実行を保証し、長時間実行問合せの読取り一貫性を維持する上で、UNDOデータを保持する(上書きしない)ことは有効です。そのために、データベースではUNDO保存期間がメンテナンスされ、自動的にチューニングされます。コミット済のUNDOデータのうち、その経過時間がUNDO保存期間に達していないものは、問合せやOracle Flashback操作で使用できるように保持されます。

参照:

  • 読取り一貫性の詳細は、『Oracle Database概要』を参照してください。

  • Oracle Flashback機能の詳細は、『Oracle Databaseアドバンスト・アプリケーション開発者ガイド』を参照してください。

 

UNDOデータの管理について

Oracle Databaseでは、デフォルトでUNDOデータおよびUNDO表領域が自動的に管理されますが、Oracle Flashback機能を使用している場合は、フラッシュバック操作の成功を保証するために、いくつかのUNDO管理タスクを実行する必要があります。

Oracle Flashback操作中にsnapshot too oldというエラーが発生した場合は、フラッシュバック操作のサポートに十分なUNDOデータが保持されているかどうか確認する必要があることを意味しています。

Oracle Flashback操作のサポートを強化するには、次の2つの方法があります。

UNDO情報の表示

自動UNDO管理ページを使用して、UNDO構成に関する次の情報を表示できます。

UNDO情報を表示するには、次の手順を実行します。
  1. データベースのホームページに移動します。

    詳細は、「データベースのホームページのアクセス」を参照してください。

  2. ページの上部で、「サーバー」リンクをクリックしサーバー・サブページを表示します。

  3. 「データベース構成」セクションで、「UNDO管理」をクリックします。

    自動UNDO管理ページが表示されます。

    ページの詳細は、そのページの「ヘルプ」をクリックしてください。


    画像の説明

    参照:

     

UNDOアドバイザを使用したUNDO表領域の最小サイズの計算

UNDO表領域を固定サイズに変更する場合は、UNDOアドバイザを使用して必要最小限のサイズを算出します。UNDOアドバイザを使用すると、最小UNDO保存期間も設定できます。

UNDOアドバイザを使用してUNDO表領域の最小サイズを計算するには、次のようにします。
  1. 自動UNDO管理ページに移動します。

    詳細は、「UNDO情報の表示」を参照してください。

  2. 指定した期間(過去7日間など)に収集された統計と選択したUNDO保存期間のどちらに基づいてUNDO表領域の最小サイズを計算するかを決定します。

    自動収集した統計は、長時間実行問合せの期間およびUNDO生成率を含みます。Oracle Flashback機能を使用しない場合、または将来の長時間実行問合せが以前の長時間実行問合せ期間を超えない場合は、これらの統計に基づくUNDO表領域の最小サイズを計算することを推奨します。

    UNDO保存期間を選択し、入力する場合は、将来の長時間実行問合せまたはOracle Flashback操作の予想期間に基づいて期間を決定する必要があります。

  3. 一定期間に収集された統計に基づいてUNDO表領域の最小サイズを計算する場合は、次の手順を実行します。

    1. 「分析期間」セクションの「分析期間」リストで、目的の分析期間を選択します。

      「期間のカスタマイズ」を選択すると、期間の開始日時および終了日時を入力できるページが表示されます。

    2. 「分析期間で最も長い問合せに基づき自動的に選択済」を選択します。

    3. 「分析の実行」をクリックします。

      必要なUNDO表領域の最小サイズが「分析結果」セクションに表示されます。

    4. (オプション)「グラフの表示」をクリックして分析結果のグラフを表示します。

  4. 入力した期間に基づいてUNDO表領域の最小サイズを計算する場合は、次の手順を実行します。

    1. 「分析期間」セクションで「継続時間の長い問合せやフラッシュバックを許可するよう手動で指定済」を選択します。

    2. 「期間」フィールドに、目的のUNDO保存期間を秒、分、時間、日数のいずれかの単位で入力します。

      この期間は次のように計算します。

      • ワークロードに対して予想される最長実行問合せの期間を特定します。

        期間を特定する根拠となるのは、過去のワークロード期間に記録された最長実行問合せです。この情報は、自動UNDO管理ページのシステム・アクティビティ・サブページから入手できます。このサブページの分析期間は、一般サブページの「分析期間」リストから選択します。通常のワークロード期間に対応するカスタム分析期間を選択できます。

      • Oracle Flashback操作に対する最長期間を判断します。

      • 2つの期間のうち大きい方を取ります。


        画像の説明

    3. 一般サブページの「分析期間」セクションで、「分析の実行」をクリックします。

      必要なUNDO表領域の最小サイズが「分析結果」セクションに表示されます。

    4. (オプション)「グラフの表示」をクリックして分析結果のグラフを表示します。


      画像の説明

  5. (オプション)曲線上で目的のUNDO保存期間に対応する目盛(または1点)をクリックします。

    「期間」フィールドが選択したUNDO保存期間に合わせて変わります。また、グラフの上の「必要なUNDO表領域の最小サイズ」フィールドが対応する必要サイズを反映して変わります。

  6. (オプション)「適用」をクリックします。

    最小UNDO保存期間が「期間」フィールドの値に設定されます。


    注意:

    UNDOアドバイザで分析を実行したり、最小UNDO保存期間を設定しても、UNDO表領域のサイズは変わりません。UNDO表領域のサイズを変更するには、「UNDO表領域の固定サイズへの変更」の手順を実行してください。 


    参照:

     

UNDO表領域の固定サイズへの変更

UNDO表領域が大きくなりすぎるのを防ぐため、またはOracle Flashback操作のサポートを強化するために、UNDO表領域を固定サイズに変更します。

UNDO表領域を固定サイズに変更するには、次の手順を実行します。
  1. 自動UNDO管理ページで必要なUNDO表領域の最小サイズを算出した後、「UNDO表領域の編集」をクリックします。

    表領域の編集ページにUNDO表領域のプロパティが表示されます。

  2. 「データファイル」セクションで「編集」をクリックします。

    データファイルの編集ページが表示されます。

  3. 「ファイル・サイズ」フィールドに、UNDO表領域の計算済最小サイズを入力します。

    詳細は、「UNDOアドバイザを使用したUNDO表領域の最小サイズの計算」を参照してください。

  4. 「記憶域」セクションで「フルになった場合に自動的にデータファイルを拡張(AUTOEXTEND)」を選択解除します。

  5. 「続行」をクリックします。

    表領域の編集ページに戻ります。

  6. 「適用」をクリックします。

    確認メッセージが表示されます。

    参照:

     

記憶域: Oracle by Example Series

Oracle by Example(OBE)には、このマニュアルに関するシリーズが含まれています。このOBEでは、この章のタスクを段階的に説明し、注釈付きのスクリーンショットを使用します。

記憶域に関するOBEを参照するには、ご使用のブラウザで次のURLを指定します。

http://www.oracle.com/technology/obe/11gr1_2day_dba/storage/storage.htm

戻る 次へ
Oracle
Copyright © 2004, 2008, Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引