oracle数据文件被误删除后的灾祸处理办法ITeye - 威尼斯人

oracle数据文件被误删除后的灾祸处理办法ITeye

2019年03月13日08时46分20秒 | 作者: 从寒 | 标签: 数据文件,文件,数据 | 浏览: 467

key:oracle数据文件(datafile)被误删去后没有康复的方法,只能把该数据文件offline后drop掉,并删去整个表空间。
steps:
当Oracle数据文件被误删去之后的处理方法!!
1、封闭数据库:
  sqlplus "/as sysdba";
  sqlplus shutdown abort;
2、装载数据库
  sqlplus startup mount;
3、删去无效的数据库文件
  sqlplus alter database datafile /home/oracle/survey/survey.dbf offline drop
  sqlplus alter database datafile /home/oracle/survey/surveytemp.dbf offline drop
4、翻开数据库
sqlplus alter database open;
5、删去无效的表空间
  sqlplus drop tablespace surevy including contents;
  sqlplus drop tablespace surevytemp including contents;


简略的问题搞这么杂乱?
按下面过程做即可:
1.shutdown immediate
2.startup mount
3.alter database datafile xxx offline drop;
4.alter database open
5.drop tablespace xxxx including contents and datafiles;

先阐明一下alter database datafile ... offline drop:

在非归档形式下,能够运用... offline drop,在归档形式下,运用... offline. 这个指令的意思并不是从表空间将这个数据文件完全删去,而是说将这个数据文件“冻住”住:它的scn不在改变,不会再向它写入任何数据;可是原有存在这个文件中目标和数据还能够持续运用。因而在运用这个指令后,经过修正操控文件将它删去,数据库在启动时就会报文件丢掉的过错,并且会在数据字典中发生一个 MISGXXXXX的纪录。因而,以一个数据文件是无法被直接从数据库中删去掉的。

假如需求削减表空间的数据文件,能够选用以下方法:

export除表空间的内容:exp ... tablespaces=xxx;

运用include content子句删去表空间:drop tablespace xxx include content;

重见表空间,使之不包括需求去除去的数据文件;

import表空间的一切数据目标。
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表威尼斯人立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章