본문 바로가기

Database/Oracle

Oracle FlashBack 쿼리 timestamp를 이용한 긴급 복원

Oracle에서 실수로 데이터를 삭제했거나, 변경했을 경우 백업/복원을 이용한 방법 외에

아래와 같이 FlashBack 쿼리로 복원이 가능합니다.

 

복원이 가능한 조건이 있는데, 별도 문서로 참고하시기 바랍니다.

 

 

60분 전의 데이터를 확인합니다. 숫자를 변경해 시간을 조절할 수 있습니다.

SELECT COL1 FROM USER1.TABLE1 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '60' MINUTE);

 

 

60분 전 데이터로 현재 데이터를 수정해야 할 경우 예시

UPDATE USER1.TABLE1 T1     
        SET COL1 = (SELECT COL1 FROM USER1.TABLE1 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '60' MINUTE) 
        WHERE COL1 = T1.COL1);

 

 

60분 전 데이터로 새로운 테이블을 만들 경우 예시

CREATE TABLE USER1.NEWTABLE1 AS
SELECT * FROM USER1.TABLE1 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '60' MINUTE);

 

내용을 참고해서 긴급복구에 참고하시기 바랍니다.

 

'Database > Oracle' 카테고리의 다른 글

Oracle JOB 중지, 비활성화 작업  (0) 2024.04.13
Oracle 시퀀스(Sequence) 이관  (0) 2024.04.13
DBMS_DATAPUMP 중지 방법  (0) 2024.04.13
AWS RDS Oracle Memory 고찰  (0) 2024.04.13
오라클 쿼리 튜닝 방법(기초)  (0) 2024.04.13