26. 制御ファイル mount
復元先の制御ファイル作成(例)
CREATE CONTROLFILE REUSE DATABASE “BALLOON” RESETLOGS
ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 ‘/u01/app/oracle/oradata/balloons/redo01.log
GROUP 2 ‘/u01/app/oracle/oradata/balloons/redo02.log
GROUP 3 ‘/u01/app/oracle/oradata/balloons/redo03.log
DATAFILE
‘/u01/app/oracle/oradata/balloons/system01.dbf’
‘/u01/app/oracle/oradata/balloons/sysaux01.dbf’
‘/u01/app/oracle/oradata/balloons/undotbs01.dbf’
‘/u01/app/oracle/oradata/balloons/users01.dbf’
・・・
27. リカバリの実施 mount
いよいよリカバリの実施です。
まずは、必要なデータファイルが認識できているか見てみましょう
。
SQL> SELECT NAME FROM v$datafile;
NAME
===============================
‘/u01/app/oracle/oradata/balloons/system01.dbf’
‘/u01/app/oracle/oradata/balloons/sysaux01.dbf’
‘/u01/app/oracle/oradata/balloons/undotbs01.dbf’
‘/u01/app/oracle/oradata/balloons/users01.dbf’
・・・
32. 制御ファイル mount
制御ファイルも RMAN でバックアップしたものをリストアすること
で作成ができます。
ここでは、新しく作成するデータベースのことは考えずにリストア
します。
RMAN> RUN{
2> RESTORE CONTROLFILE FROM AUTOBACKUP;
3> ALTER DATABASE MOUNT;
4> }
33. リカバリの実施 mount
リカバリを実施しますが、複製 DB のデータファイル/ REDO ログ
が元の DB と異なる場合は、 SET NEWNAME 句で変更してから行
います。
RUN{
SET NEWNAME FOR DATAFILE 1 TO ‘ 新しいパス’
SET NEWNAME FOR DATAFILE 2 TO ‘ 新しいパス’
・・ ( 略 )
SQL ALTER DATABASE RENAME FILE ‘ 新しい REDO ログ’
SET UNTIL TIME 2015/10/16 22:00:00
RESTORE DATABASE;
SWITCH DATAFILE ALL;
RECOVER DATABASE;
}
リストア先の
切り替え
制御ファイルへの
反映
37. インカネーションの指定
RMAN> LIST INCARNATION OF DATABASE BALLOON
List of Database Incarnations DB Key Inc Key DB Name DB ID STATUS Reset SCN Reset Time
------- ------- -------- ------------- ------- ---------- ----------
1 2 TRGT 1334358386 PARENT 154381 OCT 30 2007 16:02:12
1 116 TRGT 1334358386 CURRENT 154877 OCT 30 2007 16:37:39
インカネーションを確認します。
RMAN> RESET DATABASE TO INCARNATION 2;
それからインカネーションを指定します。
このあと、リストア作業に入っていきます。