Oracle误删数据文件前面世oracle initialization or shutdown in progress解决

一、错误分析

  1、首先自己在产出那种意况的背景是推行如下SQL语句后生成的表空间

 1 --自定义表空间    数据表空间  临时表空间
 2 CREATE TEMPORARY TABLESPACE HOUSE_TEMP
 3          TEMPFILE 'D:\OracleData\HOUSE_TEMP.DBF'
 4          SIZE 32M
 5          AUTOEXTEND ON
 6          NEXT 32M 
 7          MAXSIZE 2G
 8          EXTENT MANAGEMENT LOCAL;
 9          
10 CREATE TABLESPACE HOUSE_DATA
11          LOGGING
12          DATAFILE 'D:\OracleData\HOUSE_DATA.DBF'
13          SIZE 32M
14          AUTOEXTEND ON
15          NEXT 32M 
16          MAXSIZE UNLIMITED
17          EXTENT MANAGEMENT LOCAL;

    但!!!有时候因为你的表空间名和文件名不那么友好。那时候你很热情洋溢的拔取shirt+delete永久删除(当然,这是自己的习惯,要是剔除回回收站间接过来就从未有过那么多细节了)。

    那即使那规范你会发觉你再一次重复连接回Oracle的时候,恭喜你,遭遇好东西,报错——ORA-01033:
ORACLE initialization or shutdown in progress

    若是出现那个荒唐,如若你是大牛,你很淡定的缓解掉了。可是!!!!你只要跟自己同样是一个刚入门的菜鸟,你会惴惴不安到可疑人生,毕竟对于Oracle配置的荒谬,你只好说OMG。

    别慌,小志带您上车,亲测有效。

  2、解决办法

    a:首先尝试运用Oracle的例用线程操作数据库

1 #此为cmd命令,使用管理员运行
2 sqlplus /nolog

    b:使用sysdba角色连接

1 SQL> user/ui as sysdba

    c:使用如下命令删除你的表空间

1 SQL> alter database datafile 'E:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/TSTEST001.DBF' offline drop;
2 SQL> alter database open;
3 SQL> drop tablespace CTBASEDATA;

    d:使用上述命令重复使用直到提醒您的不得了数据文件不设有

    e:在运用这几个例程后记得退出你的例程,不然你就gg

SQL > exit

   3、再度连接后发现你可知一连数据库了,是或不是很嗨森,别急,你查看下你的本原的公文夹,尽管删除了你的数据文件,不过你的临时文件还设有。带有*temp.DBF的文件,那是你创建的临时表空间,记得还要删除掉,在命令行使用如下指令删除

SQL > alter database tempfile '你临时文件路径' drop including datafiles

  4、删除完最好重启下电脑,那样Oracle就可以安全使用了,最终嘱咐大家,数据有高危机,建表需谨慎。

附:

成立用户指令

--创建用户
CREATE USER HOUSE IDENTIFIED BY  HOUSE_DATA
DEFAULT TABLESPACE HOUSE_DATA
TEMPORARY TABLESPACE HOUSE_TEMP;

修改用户密码指令

alter user 用户名 identified by 新密码

 

相关文章