高速リカバリ領域(FRA)の基本と設定方法を徹底解説

Oracle Master Bronze

Oracle Databaseを運用していると、バックアップやアーカイブログ、障害発生時のリカバリなど、多くの「復旧に関する情報」を扱う必要があります。
そのとき重要な役割を果たすのが高速リカバリ領域(FRA:Fast Recovery Area)です。

この記事では、FRAの役割・仕組み・設定方法・構成のベストプラクティスまでを、初心者向けにわかりやすく図解入りで解説します。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?


1. 高速リカバリ領域(FRA)とは?

FRAとは、Oracleが復旧処理やバックアップ操作に必要な各種ファイルを自動的に保管・管理するための専用領域です。
Oracle 10g以降で導入され、現在の標準的なバックアップ運用において非常に重要なコンポーネントです。


🔍 FRAの定義(簡潔に)

リカバリやバックアップに必要なファイルを集中管理するOracle専用のストレージ領域


2. FRAに格納されるファイル

┌────────────────────┬────────────────────────────┐
│ ファイル種別 │ 説明 │
├────────────────────┼────────────────────────────┤
│ アーカイブログファイル │ リカバリに必要なREDOログの履歴 │
│ 自動バックアップファイル │ spfileや制御ファイルの自動バックアップ │
│ RMANバックアップセット │ RMANが取得したデータファイルのバックアップ │
│ フラッシュバックログ │ フラッシュバック操作に必要なログ情報 │
│ 一時的なREDOログ(運用次第)│ 一部の構成で一時的に出力されることがある │
└────────────────────┴────────────────────────────┘


アーカイブログファイルについては以下。


3. FRA構成のイメージ図

┌──────────────────────────────┐
│ 高速リカバリ領域(FRA) │
│ ┌────────────┐ ┌────────────┐ │
│ │ アーカイブログ │ │ RMANバックアップ │ │
│ └────────────┘ └────────────┘ │
│ ┌────────────┐ ┌────────────┐ │
│ │ フラッシュバックログ │ │ 自動バックアップ │ │
│ └────────────┘ └────────────┘ │
└──────────────────────────────┘

4. FRAのメリット

項目内容
✅ 自動管理Oracleが古いファイルを自動削除し、スペースを確保
✅ 運用の簡素化各種バックアップファイルが1箇所に集まっており、管理しやすい
✅ RMAN連携FRAに格納されたファイルをRMANが自動的に検出して使用可能
✅ 高速復旧フラッシュバックやアーカイブログによるリカバリがスムーズに実行可能

5. FRAの構成方法(初期化パラメータ)

以下の2つのパラメータを設定すればFRAが有効になります:

パラメータ名内容
DB_RECOVERY_FILE_DESTFRAの保存先ディレクトリを指定
DB_RECOVERY_FILE_DEST_SIZEFRAに使用できる最大サイズ(バイト単位)

▶ 設定例(spfile使用環境)

ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=20G SCOPE=BOTH;
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='/u02/app/oracle/fast_recovery_area' SCOPE=BOTH;

先に DB_RECOVERY_FILE_DEST_SIZE を設定せずに DB_RECOVERY_FILE_DEST を設定しようとするとエラーが発生します。
DB_RECOVERY_FILE_DEST_SIZE を設定していない場合は先に設定しましょう。

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='/u02/app/oracle/fast_recovery_area' SCOPE=BOTH;
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='/u02/app/oracle/fast_recovery_area' SCOPE=BOTH
*
行1でエラーが発生しました。:
ORA-02097: 指定した値が無効なので、パラメータを変更できません。 ORA-19802:
DB_RECOVERY_FILE_DEST_SIZEなしでDB_RECOVERY_FILE_DESTを使用できません ★エラー


SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=20G SCOPE=BOTH;

システムが変更されました。

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='/u02/app/oracle/fast_recovery_area' SCOPE=BOTH;

システムが変更されました。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?


6. FRAの使用状況確認方法

使用率や空き容量は以下のビューで確認できます。

SELECT * FROM V$RECOVERY_FILE_DEST;

主なカラム:

カラム名内容
SPACE_LIMIT設定された最大サイズ(バイト)
SPACE_USED現在の使用量(バイト)
SPACE_RECLAIMABLE削除可能なファイル分のサイズ
NUMBER_OF_FILES格納されているファイルの数

7. FRAのベストプラクティス:別ディスクに分離するべき理由

▶ FRAとデータファイルを別ディスクにすることが推奨される理由

┌──────────────┐       ┌────────────────────┐
│ データファイル用ディスク │ │ FRA専用ディスク │
│ ・データファイル │ │ ・アーカイブログ │
│ ・REDOログ │ │ ・RMANバックアップ │
│ ・TEMPファイル等 │ │ ・フラッシュバックログ │
└──────────────┘ └────────────────────┘

理由①:I/O競合を防げる

  • FRAがデータファイルと同じディスク上にあると、RMANやアーカイブ処理とユーザーのSQL実行がI/Oでバッティングし、パフォーマンス低下を引き起こします。

理由②:障害時の復旧手段を確保

  • データファイルのディスクに障害が起きても、別ディスクのFRAが生きていれば復旧可能
  • 特に、制御ファイルやアーカイブログがFRAに残っていれば、障害対応が大幅に容易になります。

理由③:運用上の安全性向上

  • FRAはRMAN保有ポリシーやアーカイブログ量によって急激に容量が増えることがあるため、データファイルとは物理的に分離した方が安全です。

8. FRA使用時の注意点と対処法

注意点内容・対策
FRAの容量不足– RMANのDELETE OBSOLETEを定期的に実行
– 容量を増加させる
古いアーカイブログが溜まる– 外部へ転送・バックアップする
– 自動削除が有効か確認
FRAに依存しすぎる– 外部ストレージやクラウドへの二重バックアップを検討

9. FRAを使用しないとどうなる?

  • バックアップやアーカイブログの出力先がバラバラになり、管理が煩雑になります。
  • 古いバックアップファイルを自動削除できず、ストレージ枯渇のリスクが高まります。
  • RMANやフラッシュバックリカバリの活用が難しくなり、障害復旧に時間がかかります。

10. まとめ:FRAはOracle運用の安心を支える中核機能

FRA(Fast Recovery Area)は、バックアップと復旧を効率的かつ安全に行うためのOracleの戦略的機能です。

  • 別ディスクに構成して性能と復旧性を最大化
  • 定期的に使用状況を監視し、容量不足を未然に防止
  • RMAN・アーカイブログ・フラッシュバックログとの連携で、運用効率と安心を確保


[参考]
バックアップおよびリカバリ・ユーザーズ・ガイド 19c

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

コメント

タイトルとURLをコピーしました