下午新来的同事误把基础信息表的一些重要数据删除了,我们之前都没有做备份,如何能将基础数据表中的信息恢复到她删除前.数据库:oracle9i
日志:未归档

解决方案 »

  1.   

    用flashback闪回技术可以恢复 
      

  2.   


    Flashback是oracle 9i开始就提供的一项特性 
      

  3.   

    9i也有闪回,功能没有那么强大而已。。呵呵,纠正下,闪回时间限制
    该参数用来控制flashback log 数据保留的时间,或者说,你希望flashback database 能够恢复的最早的时间点。默认值是1440,单位是minute,即24 小时,
      

  4.   

    估计闪回也难恢复回去了!不过可以试一下
    Oracle 9.2引入flashback query:
    事先你要估算哈你删除数据到现在好久了,
    如:
    1、假设当前距离删除数据已经有5 分钟左右的话:
    select * from table as of timestamp sysdate-5/1440;
    2、将查询的结果塞入中间表
    create table tmp as select * from table as of timestamp sysdate-5/1440;
    3、drop原来的表: drop table 原表;
    4、重新将中间表数据恢复:
    create table 表 as select * from tmp;
      

  5.   

    类似
    SELECT VERSIONS_OPERATION, VERSIONS_STARTTIME, VERSIONS_ENDTIME,
      EMPNO, ENAME, JOB, SAL, DEPTNO
      FROM EMP
      VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE;
      

  6.   

    flashback scn  
    select dbns_flashback.get_system_change_number sn from dualinsert into tab select * from tab as of scn sn(上面查到的一个scn)
    commit
      

  7.   

    select dbms_flashback.get_system_change_number sn from dual
      

  8.   

    flashback 10G以上版本才支持.
      

  9.   

    好像没有吧.没logminer之前日志是查看不了的.