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;
위와 같이 해주면 된다.
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;
위와 같이 해주면 된다.