SQL> create table test_flashback as select * from emp;  --创建表 Table created. SQL> select dbms_flashback.get_system_change_number from dual; --记录删除数据前scn GET_SYSTEM_CHANGE_NUMBER ------------------------ 1069396 SQL> delete from test_flashback where deptno=20;      --删除数据 5 rows deleted. SQL> commit; Commit complete. SQL> startup mount exclusive              --启动到mount exclusive状态 ORACLE instance started. Total System Global Area  839282688 bytes Fixed Size                  2217992 bytes Variable Size             557844472 bytes Database Buffers          276824064 bytes Redo Buffers                2396160 bytes Database mounted. SQL> flashback database to scn 1069396;  --闪回到删除数据之前,还可以用时间戳闪回如: Flashback complete.                                    --flashback database to to_timestamp('2013-10-8 18:02:34','YYYY-MM-DD HH24:MI:SS') SQL> alter database open read only;    ?--以read only 方式打开检查数据库是否闪回成功,如不成功考虑其他形式的闪回 Database altered. SQL> select * from scott.test_flashback where deptno=20; EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO ---------- ---------- --------- ---------- --------- ---------- ---------- ---------- 7369 SMITH      CLERK           7902 17-DEC-80        800                    20 7566 JONES      MANAGER         7839 02-APR-81       2975                    20 7788 SCOTT      ANALYST         7566 19-APR-87       3000                    20 7876 ADAMS      CLERK           7788 23-MAY-87       1100                    20 7902 FORD       ANALYST         7566 03-DEC-81       3000                    20 SQL> startup ORACLE instance started. Total System Global Area  839282688 bytes Fixed Size                  2217992 bytes Variable Size             557844472 bytes Database Buffers          276824064 bytes Redo Buffers                2396160 bytes Database mounted. ORA-01589: must use RESETLOGS or NORESETLOGS option for database open SQL> alter database open resetlogs; Database altered.  |