2017년 1월 13일 금요일

oracle delete 데이터 복구(flashback query)

SQL> show parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS1
-- 현재 900초로 되어있음

SQL> alter system set undo_retention = 7200;

System altered.

SQL> show parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     7200
undo_tablespace                      string      UNDOTBS1


SELECT *
FROM TABLE_NAME
AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '120' MINUTE)
WHERE FILED_NAME = ?;
으로 검색해서 삭제된 데이터를 찾을 수 있다. 복구는 알아서...