Oracle误删表空间文件怎么办
本篇内容介绍了"Oracle误删表空间文件怎么办"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
今天在清理主机空间时,将一个表空间的数据文件误以为是dump文件,直接删除了,删完后才意识到有问题,不过已经恢复不了了( LINUX),此时数据库是可以正常的,但是有些数据库视图打不开了,比如dba_data_files,没办法,在网上查了处理方式,都是说要重启数据再恢复或删除,因为我的这几个文件本来也没打算要的,所以最终还是会删除的,但是又不想重启数据库。
网上给的说法是:
sqlplus / as sysdba #以dba身份登陆数据库
shutdown immediate; #关闭数据库
startup mount; #打开控制文件
alter database datafile 'D:\app\WHPLATFORM_ZX1.DBF' offline drop; #注销被误删的表空间文件
alter database open;
重启数据库到mount状态,然后drop掉误删除的文件,再打开数据库;
既然我不想重启数据,又想处理好这个问题,保证数据库一切正常,我就用DBA用户尝试了下先将表空间离线,结果报错,实际上这个表空间已经在离线的状态了,然后直接执行
alter database datafile '/u01/oradata/orcl/tbs_yzp_test02.dbf' offline drop;
结果正常删除,然后继续删除其他几个数据文件。
再去查询几个刚才打开有问题的系统视图,结果正常了。最终在没有重启数据库的情况下,解决了数据文件误删的问题,感觉还是不错的,哈哈。
"Oracle误删表空间文件怎么办"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!