ユーザー表領域やSYSAUX表領域に障害が発生した場合には、データベースを停止せずに障害の発生した表領域単位、もしくはデータファイル単位のリカバリを実施することが可能です。表領域が1つのデータファイルで構成されている場合には、表領域単位、データファイル単体のリカバリに違いはありません。
表領域が複数のデータファイルで構成されており、そのうち一部のデータファイルにのみ障害が発生した場合には、データファイル単位のリカバリを実施することで、表領域はオンラインのまま、障害の発生したデータファイルのみをリカバリすることが可能です。
ここでは、1つのデータファイルで構成されているUSERS表領域で障害が発生した場合を例に挙げ、表領域単位のリカバリ手順を説明します。
オフラインリカバリの「1.障害個所の確認」と同様にアラートログ、ユーザープロセスのエラー、動的パフォーマンス・ビュー(v$recover_file、v$datafile_header)からどのデータファイルに障害が発生したのかを確認します。
リストアを実施するため障害の発生した表領域をオフラインに変更します(リスト6)。
SQL> select t.name tablespace_name, d.name file_name, r.* from v$recover_file r,v$datafile d,v$tablespace t 2 where r.file# = d.file# 3 and d.ts# = t.ts#; TABLESPACE_NAME FILE_NAME FILE# ONLINE ONLINE_ ERROR CHANGE# TIME ------------------------------ ---------------------------------------- ---------- ------- ------- -------------------- ---------- ------------------- USERS /opt/app/oracle/oradata/users01.dbf 4 OFFLINE OFFLINE WRONG FILE TYPE 0 SQL> alter tablespace users offline immediate; 表領域が変更されました。
「1.障害個所の確認」にて確認したデータファイルをバックアップからリストアします(リスト7)。
oracle@single> cp -p /work/ONLINE_BACKUP/users01.dbf /opt/app/oracle/ oradata/
「RECOVR TABLESPACE」または「RECOVER DATAFILE」を使用し、リストアしたデータファイルに対してアーカイブREDOログファイル、オンラインREDOログファイルを適用しリカバリを実施します。ここでは、表領域単位のリカバリを行いますので、「RECOVER TABLESPACE」を使用しています(リスト8)。
SQL> set autorecovery on SQL> recover tablespace users …… ORA-00279: 変更3831712(01/28/2007 03:39:41で生成)にはスレッド1が必要です ORA-00289: 検討すべきログ・ファイル: /opt/app/oracle/archive/1_22_611947833.dbf ORA-00280: 変更3831712(スレッド1)は順序番号22に存在します。 ORA-00278: ログ・ファイル'/opt/app/oracle/archive/1_21_611947833.dbf'はこのリカバリでは必要なくなりました ログが適用されました。 メディア・リカバリが完了しました。
オフラインリカバリの「4.リカバリ完了後の確認」と同様に、動的パフォーマンス・ビューのv$recover_fileにレコードがなく、v$datafile_headerのERROR列がNULLであることを確認し、表領域が正常にリカバリできたことを確認します。
リカバリが完了したオフラインの状態の表領域をオンラインに変更します(リスト9)。これでオンラインリカバリの手順は終了です。
SQL> alter tablespace users online; 表領域が変更されました。 SQL> select tablespace_name,status from user_tablespaces; TABLESPACE_NAME STATUS ------------------------------ --------- SYSTEM ONLINE UNDOTBS1 ONLINE SYSAUX ONLINE TEMP ONLINE USERS ONLINE USERS02 ONLINE USERS03 ONLINE 7行が選択されました。
Copyright © ITmedia, Inc. All Rights Reserved.