--------------------------------------------------------------------------------------------장애 |
|||||
▼ |
▼ |
▼ |
▼ |
▼ |
▼(장애) |
A tbs 생성 |
백업 받았음 |
B tbs 생성 |
A,B tbs에 test_a,b table생성 (생성후 자료insert) |
test_a,b 실수로 drop |
모든 Datafile, Ctlfile 삭제됨 |
위 시나리오 요약 및 복구목적
1. A tbs 생성 이후 switch logfile
2. 백업
3. B tbs 생성 이후 switch logfile
4. A,B tbs에 test_a,b table생성 후 자료 insert (commit 후 switch logfile)
5. datafile, contorl file 모두 삭제됨
복구 목적 : DB OPEN, 실수로 drop 한 table 불완전복구( 위 그림에서 5번째 ▼ 이전으로 )
5. 복구확인
실습 DB 설명
2. 백업
4. A,B tbs에 test_a,b table생성 후 자료 insert (commit 후 switch logfile)
해결
1. 임시경로에 백업된 datafile, control file, 현재 redolog file을 임시경로로 RESTORE
2. alter database rename으로 임시경로로 DB셋팅
3. logmnr이용해서 test_a,b drop된 시간 검색
4. 복구시도
1. 해결3번에서 찾은 시간으로 recover 한번 실행하면 control file에 A tbs정보가 입력됨
2. 입력된 tbs 정보를 임시경로로 datafile 지정
3. 다시 복구 시도(해결3번에서 찾은 시간으로 불완전 복구)5. 복구확인
실습 DB 설명
모든 datafile, controlfile, redo log file은
/home/oracle/oradata/testdb/안에 저장되어 있습니다.
복구를 위해 Archive log mode입니다.
복구를 위해 Archive log mode입니다.
-----------------------------------------------------------------------
-------------------실습시작--------------------------------------------
-----------------------------------------------------------------------
1. A tbs 생성 이후 switch logfile
1 create tablespace a 2* datafile '/home/oracle/oradata/testdb/a01.dbf' size 5m SQL> / Tablespace created.
-----------------------------------------------------------------------
-----------------------------------------------------------------------
-----------------------------------------------------------------------
2. 백업
SQL> !sh ~/main_backup.sh set begin backup mode~~ real 0m0.658s user 0m0.037s sys 0m0.050s end begin backup mode-- start file copy.… real 0m41.002s user 0m0.118s sys 0m6.353s end file copy~ set end backup mode~~ real 0m2.002s user 0m0.033s sys 0m0.050s complete hot backup~!!
-----------------------------------------------------------------------
-----------------------------------------------------------------------
-----------------------------------------------------------------------
3. B tbs 생성 이후 switch logfile
3. B tbs 생성 이후 switch logfile
SQL> create tablespace b 2 datafile '/home/oracle/oradata/testdb/b01.dbf' size 5M; Tablespace created. SQL> alter system switch logfile; System altered. SQL> / System altered. SQL> / System altered. SQL> / System altered. SQL> / System altered.
-----------------------------------------------------------------------
-----------------------------------------------------------------------
-----------------------------------------------------------------------4. A,B tbs에 test_a,b table생성 후 자료 insert (commit 후 switch logfile)