728x90
# 완전/불완전 복구
l 복구의종류 2가지
- 완전 복구 : 마지막 commit 한 시점으로 복구
- 불완전 복구 : 과거의 특정 시점으로 복구
l 불완전 복구의 종류
- cancel base : current redo log file 또는 archive log file이 깨졌을 때 복구방법으로 사용
- time base : 과거의 특정 시점으로 복구
# 잘못된 data를 입력했다든지
# 아주 중요한 테이블이 drop 되었을때
# 유저가 drop 되었을 때
l time base 불완전 복구 순서
- 테스트 하기전에 로그 스위치를 여러 번 일으키고 수행한다
- 아래를 .bash_profile 에 추가해준다
NLS_LANG=american_america.we8iso8859p15 NLS_DATE_FORMAT=RRRR/MM/DD:HH24:MI:SS export NLS_LANG export NLS_DATE_FORMAT |
1. SQL> select sysdata from dual;
- 현재 시간확인
SQL> select sysdate from dual; SYSDATE ------------------- 2014/07/21:16:39:41 |
2. SQL> drop user scott cascade;
3. SQL> shutdown immediate
4. SQL> startup mount
5. RMAN> run {set until time = '2014/07/21:16:39:41';
restore database;
recover database;}
6. RMAN> alter database open resetlogs;
7. SQL>connect scott/tiger
8. full backup 수행
l parameter file 삭제 후 복구 방법
- RMAN> list backup of spfile;
- SQL> select dbid from v$database;
SQL> select dbid from v$database; DBID ---------- 3193357653 |
1. parameter file 삭제하기
SQL> show parameter spfile cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/ [dbdb:dbs]$ rm spfiledbdb.ora |
2. RMAN에서 nomount 시작
[dbdb:~]$ rman target / RMAN> set dbid=3193357653 - 파라미터 파일이 존재하지 않기 때문에 위과정이 필요하다 RMAN> shutdown abort RMAN> startup nomount startup failed: ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initdbdb.ora' starting Oracle instance without parameter file for retrieval of spfile Oracle instance started Total System Global Area 159019008 bytes Fixed Size 1335192 bytes Variable Size 75497576 bytes Database Buffers 79691776 bytes Redo Buffers 2494464 bytes RMAN> restore spfile from autobackup; …………………………………………………………………………………….. channel ORA_DISK_1: no AUTOBACKUP in 7 days found RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of restore command at 07/21/2014 17:27:30 RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece - 일반적인 restore 복구는 위와 같은 오류를 발생시킨다. controlfile에 백업 상태가 적혀있는데 nomount 상태이기 때문에 controlfile을 확인할 수 없어서 직접 경로를 적어줘야 한다 |
3. restore spfile from '/u01/app/oracle/flash_recovery_area/DBDB/autobackup/2014_07_21/o1_mf_s_853524332_9wsoyy6n_.bkp comment=NONE'
- backup database 에서 startign 부분의 경로를 적어줘야 한다
4. startup force
'빅데이터과정 > WORKSHOP 2 ' 카테고리의 다른 글
#28_140722_WSHOP2_DATAFILE, CONTROLFILE, REDO FILE 복구 (0) | 2014.07.22 |
---|---|
#28_140722_WSHOP2_NOLOGGING (0) | 2014.07.22 |
#27_140721_WSHOP2_CURRENT REDO LOG FILE 복구 (0) | 2014.07.22 |
#27_140721_WSHOP2_NON CRITICAL FILE 복구 (0) | 2014.07.22 |
#27_140721_WSHOP2_압축 백업 (0) | 2014.07.22 |