日期:2014-05-17  浏览次数:21261 次

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



------解决方案--------------------
造成上述问题的原因是误把'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;

表空间已删除。

------解决方案--------------------
你做什么操作时报:一直都报数据库未打开

------解决方案--------------------
解决了吗?
------解决方案--------------------
没用过精简版, 精简版也应该有alter文件吧? 把alert文件里面的内容弄出来。
另:你如何手动删除表空间的,是直接操作系统删除?
有点点思路: startup mount ;
alter database datafile '' offline drop;
alter database open;



还有是 精简版数据库不能文件不能超过4g? 还是 你的磁盘是fat格式。。