flashback transaction query 데이터 복구

2023. 12. 31. 19:08DBMS/RecoveryBackUp

반응형

as of timestamp 과거 시점 작성 

systimestamp현재시간

 

systimestamp-interval '5' minute 현재 시간에서 5분을 뺀 시간

 

 

--king 데이터 변경 

select * from emp where ename='KING';

 

 

 

--월급을 0으로 변경

 

--커밋

 

--4분 전 KING데이터 확인

select ename, sal
from emp
as of timestamp (systimestamp-interval '4' minute)
where ename='KING';

 

 

참고, 현재 시간 조회 쿼리

select sysdate from dual;

 

테이블 flashback 가능한 시간 기본 15분이다.

900초

900초

 

 

 

 

--flashback이 가능한 상태로 변경

 

 

변경 완료

 

 

15분 전 데이터로 flashback

 

 

 

 

 

 

--query

 

alter table emp enable row movement;

select row_movement
from user_tables
where table_name = 'EMP';

flashback table emp to timestamp (systimestamp-interval '15' minute);

select * from emp where ename='KING';

 

 

 

 

 

#지정 시간 사이에 DDL DCL 문을 수행하였다면 FLASHBACK 명령어는 수행되지 않는다.

 

--drop 한 테이블 복구

--테이블 삭제
drop table emp;

--삭제 테이블이 휴지통에 존재하는지 확인
select original_name, droptime
from user_recyclebin;

--복구
flashback table emp to before drop;

select * from emp;

 

 

 

--특정 시점부터 변경 이력 정보 조회

날짜 형식 설정

 

 

 

 

 

--

 

--현재 시간확인
select systimestamp from dual;


select ename, sal, versions_starttime, versions_endtime, versions_operation
from emp
versions between timestamp
to_timestamp('2023-12-31 18:50:21','RRRR-MM-DD HH24:MI:SS')
and maxvalue
where ename='KING'
order by versions_starttime;

 

 

--UNDO 할 SQL 조회

 

SCN은 SYSTEM change Number , commit 시 생성되는 번호이다.

 

transaction query 결과를 보기위해 데이터베이스 모드를 아카이브 모드로 변경해야 한다. 장애 발 생 시 db 복구 가능한 로그 정보를 자동으로 저장하게 하는 모드이다. 

 

--DB모드 변경

 

 

startup mount

 

데이터 베이스 마운트 상태로 up

 

 

 

 

alter database archivelog 아카이브 모드로 변경

 

 

 

redo log file 저장 가능

 

반응형

'DBMS > RecoveryBackUp' 카테고리의 다른 글

오라클 백업에 관한 내용  (0) 2024.09.10
RMAN 구성  (0) 2024.07.03
Datafile Recovery, Media Recovery, Point-in-Time Recovery  (0) 2024.05.15
오라클 데이터베이스의 시작 단계  (0) 2024.05.05
RMAN > setnewname  (0) 2024.03.10