事象
netvault oracle apmでデータファイルごとにバックアップを取得していたが、リストア後、データファイルが読めなくてmountできない状態となった。
startupすると以下のようになる。
SQL> startup ORACLE instance started. Total System Global Area 1068937216 bytes Fixed Size 2220200 bytes Variable Size 616566616 bytes Database Buffers 444596224 bytes Redo Buffers 5554176 bytes Database mounted. ORA-01113: file 1 needs media recovery ORA-01110: data file 1: '/opt/oracle/app/oradata/orcl/system01.dbf'
どうやらディスククラッシュ状態のようだ
以下情報を元にリカバリを行った。
http://8.pro.tok2.com/~coredump/tech/oracle/recovery/oracle_recovery_contents.html
解決
データファイルのパスを出力
SQL> COL NAME FORMAT A20 SQL> select DF.FILE#,DF.NAME,TS.NAME,BU.STATUS from v$backup BU, v$datafile DF, 2 v$tablespace TS where DF.TS#=TS.TS# and DF.FILE#=BU.FILE#; FILE# NAME NAME STATUS ---------- -------------------- -------------------- ------------------ 1 /opt/oracle/app/orad SYSTEM UNKNOWN ERROR ata/orcl/system01.db f 2 /opt/oracle/app/orad SYSAUX ACTIVE ata/orcl/sysaux01.db f 3 /opt/oracle/app/orad UNDOTBS1 ACTIVE ata/orcl/undotbs01.d bf FILE# NAME NAME STATUS ---------- -------------------- -------------------- ------------------ 4 /opt/oracle/app/orad USERS ACTIVE ata/orcl/users01.dbf 5 /opt/oracle/app/orad EXAMPLE ACTIVE ata/orcl/example01.d bf 6 /opt/oracle/app/orad TEST1 ACTIVE ata/orcl/userstset01 .dbf FILE# NAME NAME STATUS ---------- -------------------- -------------------- ------------------ 7 /opt/oracle/app/orad TEST2 ACTIVE ata/orcl/userstset02 .dbf 7 rows selected.
修復作業を行う。
※マウント状態としておくこと。
-- オフライン > ALTER DATABASE DATAFILE '/opt/oracle/app/oradata/orcl/system01.dbf' OFFLINE; -- リカバリ > RECOVER DATAFILE '/opt/oracle/app/oradata/orcl/system01.dbf' Media recovery complete. -- オンラインライン > ALTER DATABASE DATAFILE '/opt/oracle/app/oradata/orcl/system01.dbf' ONLINE;
上記以外にすべてのデータファイルがマウントできないため、すべて実施した。
その後、インスタンスの再起動
> startup ORACLE instance started. Total System Global Area 1068937216 bytes Fixed Size 2220200 bytes Variable Size 616566616 bytes Database Buffers 444596224 bytes Redo Buffers 5554176 bytes Database mounted. Database opened.
なんとか無事に復旧できたっぽい
備考
netvault oracle apmのリストアページを参照すると、リストア前にデータファイルはオフラインにしないといけないようだ。
今回はオンライン状態で実施したため、このような事態がおきたのかもしれない。
http://www.bakbone.co.jp/support/netvault_lesson/nvls200812.html