Oracle中我怎样恢复被删除的表,之前有备份,单但在删除表之前没有备份,怎样恢复到被删除的那个时间段的表!
十分感谢!!!

解决方案 »

  1.   

    oracle 10g 有这个机制
    不是则要看情况,可能永远都找不会来了!
      

  2.   

    http://expert.csdn.net/Expert/topic/2391/2391823.xml?temp=1.858157E-02
      

  3.   

    归当日志只有insert,delete的日值,关键这里是drop table的、
      

  4.   

    如果数据库运行在archivelog模式下,(以sys身份执行archive log list可以看出)
    1)确定你删表的时间 如(2003-11-30 12:00:00)
    2) 关闭数据库 如shutdown immediate
    3) 恢复所有的数据文件(注意,不要恢复控制文件和联机日志文件),这些数据文件是你以前通过备份得到的
    4)启动数据库到mount状态下 startup mount
    5) 有时候你需要改变日期的格式 如alter session set nls_date_format='yyyy-mm-dd hh:mi:ss';
    6)执行数据库基于时间点的不完全恢复  
       recover database until time '2003-11-30 11:59:59';
    7) 以如下命令打开数据库
       alter database open resetlogs;
    注意不完全恢复的代价比较大,建议做之前做好数据库的备份,以防你恢复时做错
      

  5.   

    1)确定你删表的时间 如(2003-11-30 12:00:00)
    2) 关闭数据库 如shutdown immediate
    3) 恢复所有的数据文件(注意,不要恢复控制文件和联机日志文件),这些数据文件是你以前通过备份得到的
    4)启动数据库到mount状态下 startup mount
    5) 有时候你需要改变日期的格式 如alter session set nls_date_format='yyyy-mm-dd hh:mi:ss';
    6)执行数据库基于时间点的不完全恢复  
       recover database until time '2003-11-30 11:59:59';
    7) 以如下命令打开数据库
       alter database open resetlogs;
    注意不完全恢复的代价比较大,建议做之前做好数据库的备份,以防你恢复时做错