Oracle 10g 에서 Recycle Bin 기능이 생겼다.

9i 까지는 DROP TABLE 명령으로 잘못지운 테이블이 복구가 불가능 했었다.

10g 에서는 DROP TABLE 명령으로 지운 후 테이블을 검색해보면

BIN$........... 라는 새로운 테이블이 생성되는 것을 볼 수 있다.

이것을

SQL> SHOW RECYCLEBIN;

해보면,

ORIGINAL_NAME 을 알 수 있도록 표시된다.

이 테이블들은 FLASHBACK 기능으로 되살릴 수 있다.

만약 DROP시킨 테이블명이 TB_USER 라고 한다면, SHOW RECYCLEBIN; 으로 검색한 결과에

ORIGINAL_NAME 에 TB_USER라고 표시될 것이다.

되살리기 위해선

SQL> FLASHBACK TABLE TB_USER TO BEFORE DROP;

위와 같이 명령하면 된다.


또한, RECYCLEBIN 을 비우기 위해선,

SQL> PURGE RECYCLEBIN;


테이블을 DROP 할때 RECYCLEBIN 에 넣지 않고 바로 삭제하는 명령은,

SQL> DROP TABLE TB_USER PURGE;

위와 같이 해주면 된다.