본문 바로가기

나의 하루/Oracle

오라클 데이터 복구(timestamp)

다소 꼼꼼하지 못한 성격을 한번씩 내보이는 나에게 가장 중요한 오라클의 은혜는...timestamp인 것 같다.

 

 

데이터를 실수로 지웠는데 거기서 내 손이 멈추지 않고 commit까지 시켜버렸다면 멘탈 붕괴하지 말고 오라클의 timestamp에게 소원을 빌어본다.

 

 

아래와 같은 select문을 통해서 10분전의 테이블 데이터를 가져올 수 있다. 저 10을 변경하면 20분도 가능하고 30분도 가능하다.

 

SELECT * FROM [TABLE명] AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE) WHERE [조회 조건]

 

그래서 삭제한 지 5분 정도가 지났다면!!!

 

insert into [TABLE명]

(

SELECT * FROM [TABLE명] AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL '10' MINUTE) WHERE [조회 조건]
minus

SELECT * FROM [TABLE명]

)

 

을 실행해 주면 사라졌던 데이터가 다시 생성될 것이다...

 

휴우~

'나의 하루 > Oracle' 카테고리의 다른 글

오라클(Oracle) 함수(Error) 확인  (0) 2017.04.11