本想做数据库打开的情况下,不小心把表空间删除的恢复试验,但是貌似做错了
删表空间之前,已经把user.dbf的文件备份到另外的盘下面
跟着做了:drop tablespace users01
发现连数据文件都没有了,不能offline了
现在这种情况又如何重新恢复回删错表空间之前呢?
还有,这是归档模式下做的实验

解决方案 »

  1.   

    你要有undo的话, 很容易. (因为你没用PURGE, 所以UNDO里就有你的table).
      

  2.   

    drop后要恢复表空间,只有做基于控制文件的不完全恢复。
      

  3.   

    楼上的怎么尽误导人?楼主: 如果有创建这个TS时所有以前的archivelog是可以恢复的.当然,还得你有一份备份.否则也没戏.
      

  4.   

    步骤及条件:
    1、被DROP的表空间必须在数据库启用archivelog后建立;
    2、并且这些归档日志要有完整的;
    3、做基于DROP表空间前的备份控制文件的不完全恢复。
      

  5.   

    先shutdown
    startup mount
    把user.dbf放回.
    recover datafile 'd:/..../user.dbf'
    alter database open;
      

  6.   

    LS的方法明显不行。
    表空间都被drop了,控制文件里都没它的信息了,如何去recover?
      

  7.   

    用flashback database试试看呢
      

  8.   

    能不能先建一个表空间,数据文件的大小、名字等信息和原来的文件相同,关闭数据库,再把备份的数据文件覆盖oracle自己创建的数据文件?