
リカバリ機能でOracleデータベースを復活させる
有限会社 G.F.インフィニティ (Project - ∞)
2007/10/1
| ORACLE MASTER資格の中級に位置付けられ、取得すればOracle技術者としてグローバルに認定される「ORACLE MASTER Silver Oracle Database 10g」。例題を利用してポイントを押さえ、確実な合格を目指そう! |
前回「Oracleデータベースのバックアップを取得する」で、データベースのバックアップについて紹介しました。最終回である今回は、データベースのリカバリについて詳しく学びましょう。
データベースのリカバリ
■ポイント
バックアップをリストアすることでリカバリを行うメディアリカバリがメインです。REDOログファイルのリカバリ方法としてのログ消去なども対象となります。基本的なリカバリ方法を正しく理解しておくことが重要です。過去の一時点を対象とした不完全リカバリについては、ORACLE MASTER Silverの範囲ではありません。
■メディア障害とデータベースのモード
OracleインスタンスにはNOMOUNT、MOUNT、OPENという3つのモードがありますが、データベースファイルに障害が発生すると、OPENまで進むことができません。ファイルに問題があった場合、データベースのモードは次のようになります。
| モード | 説明 |
| NOMOUNTで停止 | ・初期化パラメータファイルが読み込めない場合 ・制御ファイルに問題がある場合 |
| MOUNTで停止 | ・オンラインのデータファイルに問題がある場合 ・REDOロググループのすべてのメンバーファイルに問題がある場合 |
オフラインのデータファイルやREDOロググループの一部のメンバーに問題があっても、データベースをオープンすることができます。
オープンしたデータベースにおいて、次のファイルに障害が発生すると、データベースは停止します。
- 制御ファイル
- SYSTEM表領域に属するデータファイル
- UNDO表領域に属するデータファイル
- 現行REDOロググループのすべてのメンバーファイル
■ミラー化している制御ファイルの障害
制御ファイルが損失すると、Oracleインスタンスは停止します。ミラー化していても、1つの制御ファイルが損失するとインスタンスは停止しますが、この場合は正常な制御ファイルを欠落した制御ファイルにコピーし、インスタンスを起動するだけでリカバリが完了します。
■ミラー化しているREDOログファイルの障害
REDOログファイルが損失し、そのことによってREDOロググループが構成できなくなるとインスタンスは停止します。しかし、REDOロググループに1つ以上のREDOログメンバーが残っている場合、インスタンスは継続できます。ミラー化している場合は、同じREDOロググループ内の正常なREDOログメンバーを欠落したREDOログメンバーにコピーするだけでリカバリは完了します。
次の2つの方法でもリカバリが可能です。
・REDOログメンバーの削除と追加
ALTER DATABASE DROP LOGFILE MEMBER 'ファイル名';
ALTER DATABASE ADD LOGFILE MEMBER 'ファイル名' TO GROUP グループ番号;
・REDOロググループの消去
ALTER DATABASE CLEAR LOGFILE GROUP グループ番号;
REDOログメンバーの削除、追加、REDOロググループの消去を行う場合、該当するREDOロググループが、CURRENT(現行)、ACTIVE(回復に必要)のステータスであるとエラーになります。エラーを防止するには、ログスイッチと手動でチェックポイントを実行します。
■非クリティカルなデータファイルの障害
非クリティカルファイルとは、それが存在しなくてもデータベースがオープンしていられるデータファイルのことです。SYSTEM表領域とUNDO表領域のデータファイル以外は非クリティカルファイルであるといえます。
非クリティカルファイルの障害が起こり、NOARCHIVELOGモードであった場合、その表領域を再作成しても問題なければ再作成で対応します。索引しか含まれていない表領域である場合やエクスポートしておいたデータがある場合は再作成でよいでしょう。しかし再作成できない場合、クリティカルなデータファイルの障害の際と同じリカバリが必要です。
ARCHIVELOGモードの場合、次の手順でオープンしたままリカバリが可能です。
- データファイルをオフラインにする
- 損失したデータファイルをバックアップからリストアする
- データファイルをリカバリする
- データファイルをオンラインにする
Enterprise Managerを使用する場合、リカバリしたいファイルを指定するだけで、上記のステップが自動的に行われます。
■クリティカルなデータファイルの障害
クリティカルファイルとは、それが存在しないとデータベースがオープンできないデータファイルです。SYSTEM表領域とUNDO表領域のデータファイルはクリティカルファイルであるといえます。
クリティカルファイルの障害が起こり、NOARCHIVELOGモードであった場合、すべてのオフラインバックアップ(制御ファイル、データファイル、REDOログファイル)をリストアする必要があります。インスタンスを停止し、すべてをリストアすればインスタンスを起動できますが、前回のバックアップから障害発生までのトランザクションを失うことになります。
ARCHIVELOGモードの場合、リカバリすることはできますが、次の手順のようにMOUNTモードでの作業が必要です。
- データベースを停止する
- データベースをマウントする
- 損失したデータファイルをバックアップからリストアする
- データファイルをリカバリする
- データベースをオープンする
| 覚えた知識を例題で確認! | |
ORACLE MASTER Silver DBA講座 バックナンバー
- 第1回 Oracleを適切にインストールするには
- 第2回 便利なツールでOracleデータベース作成
- 第3回 Oracleデータベースの制御ツールを使い倒す
- 第4回 Oracleデータベースの起動と停止を押さえよう
- 第5回 Oracleデータベースの記憶域はどうなっている?
- 第6回 Oracleユーザーを作成してみよう
- 第7回 権限とロールで効果的なユーザー管理を
- 第8回 Oracleデータベースのオブジェクトを管理する
- 第9回 SQLでのデータ操作方法を覚えよう
- 第10回 Data PumpとSQL*Loaderによるデータのロード
- 第11回 PL/SQLを使いこなしてデータベース管理
- 第12回 パスワード管理でOracleデータベースを守る
- 第13回 監査でOracleデータベースのセキュリティ管理
- 第14回 Oracleのネットワークのサーバ側構成とは?
- 第15回 Oracleのネットワークのクライアント側構成を知る
- 第16回 Oracle共有サーバ接続を利用する
- 第17回 UNDO管理でOracleのデータを守る
- 第18回 ロックでOracleのデータを守り、競合を防ぐ
- 第19回 Oracleのパフォーマンスを最適化する
- 第20回 Oracleでの問題発生を予防する
- 第21回 Oracleのバックアップ/リカバリの仕組みとは
- 第22回 Oracleデータベースのバックアップを取得する
- 最終回 リカバリ機能でOracleデータベースを復活させる
|
|
| スキルアップに役立つ問題を無料で出題 | |
| ITスキル研修4000件、最新情報の検索できます |
キャリアアップ
スポンサーからのお知らせ
・ケ・ュ・チマツ、クヲオ貍シ・ケ・ン・・オ。シ
- - PR -

PHP技術者認定の最上位、ウィザード試験が5月より開始