※ ChatGPTを利用し、要約された質問です(原文:RMANを使用してのバックアップとリカバリの検証)
RMANを使用したバックアップとリカバリの検証
このQ&Aのポイント
RMANを使用してのバックアップとリカバリの検証において、特定の現象についてエラーが解決できない状況が発生しています。
該当の設定で累積増分バックアップを行った時点からのリカバリを試みると、エラーが発生します。
バックアップから除外されたデータファイル6に対して、リストアが必要なバックアップが古いというエラーメッセージが表示されます。
RMANを使用してのバックアップとリカバリの検証
Oracleの知識があまりないので、変な事を聞いているかもしれませんが、
RMANのバックアップとリカバリについて以下の現象について、エラーが解決できずにいます。
===現象===
Oracle11g Release2 11.2.0.3(ASM使用)
現在、指定の表領域以外のバックアップ(フルと累積増分)を取得し、累積増分を取得した時点までリカバリを行う検証を行っております。
※バックアップコマンド
・フル
backup incremental level = 0 format '+DATA/BACKUP/lv0backup_%U' database TAG 'dbbackup' plus archivelog TAG 'archivebackup' delete all input;
・累積増分
BACKUP INCREMENTAL LEVEL 1 format '+DATA/BACKUP/lv1backup_%U' CUMULATIVE DATABASE TAG 'dbbackup' PLUS ARCHIVELOG TAG 'archivebackup' DELETE INPUT;
RMANの環境構成に以下を設定 他はデフォルトです。
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '+DATA/BACKUP/CF_%F';
CONFIGURE EXCLUDE FOR TABLESPACE 'TBLSP01';←データファイル6
CONFIGURE EXCLUDE FOR TABLESPACE 'TBLSP02';←データファイル7
この設定で、以下のコマンドで累積増分バックアップを行った時点までリカバリしようとすると、エラーになります。
~~~~~
RMAN> run{
set until scn = 1069044;
restore database;
recover database;
alter database open;
}
実行コマンド: SET until clause
restoreが開始されました(開始時間: 13-08-14)
チャネル: ORA_DISK_1が割り当てられました
チャネルORA_DISK_1: SID=14 インスタンス=orcl_1 デバイス・タイプ=DISK
ファイル6はデータベース全体のバックアップから除外されています。
ファイル7はデータベース全体のバックアップから除外されています。
チャネルORA_DISK_1: データファイル・バックアップ・セットのリストアを開始しています
チャネルORA_DISK_1: バックアップ・セットからリストアするデータファイルを指定しています
チャネルORA_DISK_1: データファイル00001を+DATA/orcl/datafile/system.313.823464749にリストアしています
チャネルORA_DISK_1: データファイル00002を+DATA/orcl/datafile/sysaux.323.823464751にリストアしています
チャネルORA_DISK_1: データファイル00003を+DATA/orcl/datafile/undotbs1.274.823464751にリストアしています
チャネルORA_DISK_1: データファイル00004を+DATA/orcl/datafile/users.286.823464751にリストアしています
チャネルORA_DISK_1: データファイル00005を+DATA/orcl/datafile/undotbs2.280.823464985にリストアしています
チャネルORA_DISK_1: データファイル00008を+DATA/orcl/datafile/testspace3にリストアしています
チャネルORA_DISK_1: バックアップ・ピース+DATA/backup/lv0backup_0ioha718_1_1から読取り中です
チャネルORA_DISK_1: ピース・ハンドル=+DATA/backup/lv0backup_0ioha718_1_1 タグ=DBBACKUP
チャネルORA_DISK_1: バックアップ・ピース1がリストアされました
チャネルORA_DISK_1: リストアが完了しました。経過時間: 00:01:05
以前のバックアップへのフェイルオーバー
restoreが完了しました(完了時間: 13-08-14)
recoverが開始されました(開始時間: 13-08-14)
チャネルORA_DISK_1の使用
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: recoverコマンドが08/14/2013 20:57:47で失敗しました
RMAN-06556: データファイル6は、SCN 1069044より古いバックアップからリストアする必要があります
~~~~~
私には、なぜバックアップから除外されているデータファイル6に対して「~古いバックアップからリストア~」といったメッセージが出てくるのか理解できていません。
おそらくリカバリで使用するコマンドが誤っているのだと思うのですが、このエラーの解決のヒントなどございましたらご教示ください。
よろしくお願いします。
お礼
ご回答ありがとうございます。 >バックアップしていない表領域は、リカバリの対象外となります。 >そしてリカバリとは、「全てのデータファイルの最終更新SCN を一致させる事」 >と考えると、TBLSP01, TBLSP02 のデータファイルについてもSCN を一致させる >必要があるため、データベースをオープンするためにはバックアップが必要となります。 「全てのデータファイルの最終更新SCN を一致させる事」が出来なかった場合、 データの不整合が発生してしまうというのが理解できていませんでした。 まだ基礎知識が不足している事を痛感致しました。 マニュアルなどをもっと深く読み進めたいと思います。 また、対処方法をご教示いただきありがとうございます。 頂いた方法を含めて、検証を行いたいと思います。 ありがとうございました。