Oracle 表空间误删导致数据库启动失败解决办法
在Oracle 使用过程中,如果误删表空间文件或者扩展文件,导致数据库无法启动解决办法:
-
误删文件为 F:\dbs\MJKFYYEMR90_EXT01.DBF
此时由于无法正常进入数据库,只能以DBA身份进入:
>system '/as dba'
>shutdown immediate; --立即停止数据库
>startup --启动数据库和挂载文件,此时会报红色标记错误
>select name from v$datafiles; --查询所有的文件,可以看到该文件被使用,如下列表
-
目前正在使用文件
-
设置误删文件为离线状态
-
由于文件不存在,会提示文件名无效,此时执行:
>alter system check datafiles; --系统重新检测文件
>alter database datafile 'f:\dbs\MJKFFYYEMR90_EXT01.DBF' OFFLINE DROP; --设置文件离线并逻辑删除
提示数据库已更改
然后再重新关闭和启动数据库即可。