오라클에서 시간을 기준으로 데이터 복구

Posted by 백창
2021. 9. 16. 21:54 개발/Oracle
반응형

#1

시스템을 실제 운용하는 상황에서는 가끔 언제 무슨 데이터를 확인 해달라는 요청이 많이 발생한다.

운영 시스템에선 DB백업을 모두 하고 있겠지만 데이터 하나하나 확인하고자 

백업 라이브러리를 뒤적거릴 시간이 없을 것이다.

이런 경우 유용하게 활용할 수 있는 timstamp 기능이 있다.

  * 이 기능은 미리 설정되어 있는 시간만큼만 조회가 가능함

 

 

사용법은 간단하다. 복구를 원하는 테이블에

as of timestamp(복구시간) 라는 명령어를 작성해주면 되는데

 

#2

정확한 복구 시점을 알 수 없을때는 

아래와 같은 방법으로 현재 시간으로부터 XX시간, XX분, XX초 전의 데이터를 확인 할 수 있다.

select * from sample_tabel as of timestamp(systimestamp - interval '1' hour)

interval '1' hour을 아래와 같이 바꾸면 다양한 방법으로 활용이 가능하다

o XX일 :  'XX' DAY

o XX시간 : 'XX' HOUR

o XX분 : 'XX' MINUTE

o XX초 : 'XX' SECOND

 

#3

정확한 복구 시점을 알고 있는 경우는 아래와 같이 정확히 복구시간을 작성해주는 것이 더욱 도움이 된다.

select * from sample_table as timestamp(to_date('20210101000000','YYYYMMDDHH24MISS'))

 

 

반응형

'개발 > Oracle' 카테고리의 다른 글

[oracle] DB Link  (0) 2016.04.07
[oracle] 날짜 + 번호 일련번호 생성하기  (0) 2015.12.13