欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

ORA-01219数据库未打开

程序员文章站 2022-06-12 21:58:37
...

今天连接数据后,一看提示ORA-01219数据库未打开,关了服务重开仍然是这样,在Baidu找了下才发现问题。

今天连接数据后,一看提示ORA-01219数据库未打开,关了服务重开仍然是这样,在Baidu找了下才发现问题。

应该是我删除了一个数据文件,看下解决办法

错误原因:
直接关闭数据库,然后删除DBF文件。即表空间文件。导致出现错误。

1、首先连接到Oracle的mount模式,用sys账户登录就进去了,

2、输入alter空格database空格open;

3、稍等后会看到被你删除的或出问题的那个数据库文件,记住这个路径和文件名或直接标记后复制下来。

4、运行cmd(切忌,不是sqlplus)后,在DOS窗口下输入sqlplus/nolog,没空格。
5、connect空格/空格as sysdba

6、这是提示已连接的同志继续,,输入:alter空格database空格datafile '这里是你出问题或被你删除的数据库文件名(开头必须包含路径比如:D:)' offline空格drop;后会提示"数据库已更改"。

7、再次输入:alter database open;后会提示"数据库已更改"。

8、输入:drop tablespace 出问题的数据库文件名(不包含后缀名如:BOOK.DBF就输入BOOK就行了)。后会提示"表空间已删除"。

9、好了输入:conn 用户名/密码,回车后提示"已连接",好了搞定了!


下面给出全部命令:

Step 1:SQL>C:\Users\Administrator\sqlplus/nolog

Step 2:SQL>conn / as sysdba

Step 3:SQL>alter database datafile 'x:xxx.dbf' offline drop;

Step 4:SQL>alter database open;

Step 5:SQL>drop tablspace xxx;

下次删除数据库文件不要在windows直接删除,不然oracle启动是会发现打不开数据库而报告错误,建议使用drop一下就好了