在此之前做了这样一操作,在plsql创建了2表空间,由于装的是oracle精简版所以创建表空间大小超过4G就不能创建,然后我就手动把表空间给删除了,回收站也给删了,问题就出现了,一直都报数据库未打开。

解决方案 »

  1.   


    我这里打不开文件,能不能copy出来。。贴出来
      

  2.   

     造成上述问题的原因是误把'F:\ORADB.DEF'这个数据文件删掉了,这种删法是不正常的,如果删掉了用户及表空间,然后再把数据文件删除应该是没问题的,但这次只是把数据文件删掉了,用户及表空间还在。解决方法:1) MOUNT数据库:STARTUP MOUNT ;2) OFFLINE DROP数据文件:ALTER DATABASE DATAFILE '<full_path_file_name>' OFFLINE DROP;3) 打开数据库:ALTER DATABASE OPEN;ps:这时候再open数据库就ok了4) 删除表空间:DROP TABLESPACE <tablespace_name> INCLUDING CONTENTS;ps:如果是误删的,只需重建表空间即可。具体操作:SQL> startup mount
    ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
    SQL> shutdown immediate
    ORA-01109: 数据库未打开
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup mount
    ORACLE 例程已经启动。Total System Global Area  612368384 bytes
    Fixed Size                  1250428 bytes
    Variable Size             167775108 bytes
    Database Buffers          436207616 bytes
    Redo Buffers                7135232 bytes
    数据库装载完毕。
    SQL> alter database datafile 'F:\ORADB.DEF'offline drop
      2  ;数据库已更改。SQL> alter database open;数据库已更改。SQL> drop tablespace oradb including contents;表空间已删除。
      

  3.   

    没用过精简版, 精简版也应该有alter文件吧?  把alert文件里面的内容弄出来。
    另:你如何手动删除表空间的,是直接操作系统删除?  
    有点点思路: startup mount ;
    alter database datafile '' offline drop;
    alter database open;还有是  精简版数据库不能文件不能超过4g? 还是 你的磁盘是fat格式。。
      

  4.   


    我在用plsql创建表空间的时候,给的空间太大,所以就直接在本地给删了表空间文件,然后就出错了。
      

  5.   

    遇到同样的问题不过参考这个 还是解决了 我的问题 ,只是不能完全照他这个打,命令可以,就是最后需要注意:
    Total System Global Area  612368384 bytes
     Fixed Size                  1250428 bytes
     Variable Size             167775108 bytes
     Database Buffers          436207616 bytes
     Redo Buffers                7135232 bytes
     数据库装载完毕。
     SQL> alter database datafile 'F:\ORADB.DEF'offline drop
       2  ;
     
    数据库已更改。
     
    SQL> alter database open;
     
    数据库已更改。
     
    SQL> drop tablespace oradb including contents;
     
    表空间已删除。
    这里的:‘F:\oradb.def’ 是你删除的那个文件的名字 (前提是你要找回误删除的文件,如果不找回应该不可以吧!还有后缀名是:dbf ),最后还须注意的是:最后一句 那个表空间是你创建时的表空间名,很可能跟你的文件下的(oradb.dbf)这个不同的;我的就是不同,后来突然想起来,输入进去,成功了