Oracle10g부터 테이블을 삭제하면 바로 삭제되지 않고 일종의 윈도우의 휴지통처럼 상태가 바뀌게 된다.
이를 확인하려면 테이블을 DROP 해보고 SELECT * FROM TAB 을 해보자. 그러면 삭제한 테이블 대신에 BIN$.... 같은 테이블이 보일것이다. 이것은 완전히 삭제가 된것이 아니고 휴지통에 들어가있는 것처럼 된건데 복구도 가능하다.
현재 삭제된 테이블을 보려면 'show recyclebin' 이나 'select * from recyclebin' 으로 조회하면 알수 있다.
테이블 삭제
recyclebin 으로 보내지 않고 바로 삭제 하려면 아래와 같이 'PURGE' 키워드를 사용하여 삭제 한다.
휴지통 비우기
recyclebin에 있는 내용을 삭제 하려면 아래와 같이 한다.
FLASHBACK TABLE (테이블 복구)
삭제된 테이블은 복구가 가능한데 그때 사용하는 키워드가 'FLASHBACK TABLE'이다.
- table : 삭제된 테이블 명을 말하고 이는 'show recyclebin' 이나 'select * from recyclebin'으로 조회하면 알 수 있다.
- expr : BEFORE
- TRIGGERS : DROP;
만약 EMP 테이블을 삭제 후 복구를 하기 위해서는 다음과 같다.
이를 확인하려면 테이블을 DROP 해보고 SELECT * FROM TAB 을 해보자. 그러면 삭제한 테이블 대신에 BIN$.... 같은 테이블이 보일것이다. 이것은 완전히 삭제가 된것이 아니고 휴지통에 들어가있는 것처럼 된건데 복구도 가능하다.
현재 삭제된 테이블을 보려면 'show recyclebin' 이나 'select * from recyclebin' 으로 조회하면 알수 있다.
테이블 삭제
recyclebin 으로 보내지 않고 바로 삭제 하려면 아래와 같이 'PURGE' 키워드를 사용하여 삭제 한다.
DROP TABLE tableName PURGE;
휴지통 비우기
recyclebin에 있는 내용을 삭제 하려면 아래와 같이 한다.
PURGE RECYCLEBIN;
FLASHBACK TABLE (테이블 복구)
삭제된 테이블은 복구가 가능한데 그때 사용하는 키워드가 'FLASHBACK TABLE'이다.
FLASHBACK TABLE[schema.]table[,
[ schema.]table ]...
TO { TIMESTAMP | SCN } expr
[ { ENABLE | DISABLE } TRIGGERS ];
[ schema.]table ]...
TO { TIMESTAMP | SCN } expr
[ { ENABLE | DISABLE } TRIGGERS ];
- table : 삭제된 테이블 명을 말하고 이는 'show recyclebin' 이나 'select * from recyclebin'으로 조회하면 알 수 있다.
- expr : BEFORE
- TRIGGERS : DROP;
만약 EMP 테이블을 삭제 후 복구를 하기 위해서는 다음과 같다.
FLASHBACK TABLE emp TO BEFORE DROP;
'Oracle > 백업 & 복구 & 장애' 카테고리의 다른 글
Tablespace와 Data File 관리 (1) | 2012.01.25 |
---|---|
[Oracle] Parameter File (0) | 2012.01.22 |
[10g] Control File 다중화 및 Trace File 로 백업 및 복구 (0) | 2011.10.26 |
Cold Backup 과 Hot Backup (0) | 2011.10.25 |
[10g] Oracle Database Backup Tree 와 Recover [1] (0) | 2011.10.19 |