SMALL

오늘 저녁에 회사에서 특정 테이블 지운적이 있는지 전화가 왔음. 알아보니, 누군가가 마스터 테이블을 삭제해서 서비스가 중지 되었다고 한다.


그래서 급하게 회사에서는 플래시백을 이용하여 테이블을 복구하였다.


플래시백(flashback)?

간단히 말하면 데이터 처리를 하고 커밋 시 데이터를 원복 할수있게 해준다.

얼마전까지의 데이터를 복구 해주는지는, 설정마다 다를 것


얼마전의 데이터까지 복구 가능한지 알아보기


SHOW PARAMETER UNDO;



위와 같이 나옴,, undo_retention의 value 값이 원복가능한 시간이다.. 초 단위이므로 위의 db는 900/60 = 15분전까지 되돌릴수 있음.


위의 쿼리 일반 사용자로 실행하면 접근권한 없다고, root 계정으로 접속함.


FLASHBACK TABLE 테이블명 TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '10' MINUTE);

을 돌리니 데이터가 원복되었다.




LIST

+ Recent posts