반응형
오라클을 이용하다면 보면 의도치 않게 데이터를 삭제하거나 변경을 하고 커밋을 해버리는 경우가 종종 발생하는데요.
이런 경우 데이터를 COMMIT을 한지 얼마 안 되었거나 메모리를 넉넉하게 잡아놓은 경우 FLASHBACK 기술을 이용해서 데이터 복원이 가능합니다.
1. 먼제 임시 테이블과 데이터를 생성합니다.
2. 데이터를 삭제하고 COMMIT을 합니다.
3. FLASHBACK에 데이터가 존재하는 확인합니다.
본 포스팅에서 사용할 명령어는 AS OF TABLE 입니다. 자세히 기술하면 다음과 같습니다.
SELECT * FROM TEMP_TABLE
AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '8' MINUTE); 여기에서 '8'은 몇분전에 데이터를 조회할지를 표시하는 것으로 본 포스팅에서 사용된 쿼리는 8번 데이터를 조회한다는 뜻입니다. 여기서 보여줄 수 있는 데이터의 인터벌은 시스템 설정 및 운영에 따라 달라질 수 있습니다.
4. 데이터가 조회가 된다면 원래있던 테이블에 새롭게 INSERT 하는 방법 등으로 데이터를 복구 할 수 있습니다.
반응형
'프로그래밍 > 3. ORACLE' 카테고리의 다른 글
[오라클/ORACLE] ORACLE 서버 구성정보 확인하기. (0) | 2013.04.15 |
---|---|
[오라클/ORACLE] DBA (데이터베이스 관리자)의 업무 (0) | 2013.04.13 |
[데이터베이스] 데이터베이스 설계에 관한 오해(데이터베이스는 행위를 고려하지 않는다?) (2) | 2013.02.07 |
[오라클/ORACLE] DELETE table_name works (0) | 2013.02.05 |
[데이터베이스] 유니버설 데이터 모델링 (0) | 2013.02.02 |
댓글