建控制文件报错
ORA-01189 ORA-01110
1 跳过有问题的数据文件重建控制文件或只用system01.dbf重建;
跳过就是建控制文件的语句里少写那个报错的数据文件,建好后offline
alter database open RESETLOGS;
alter database datafile 7 offline;
select file_name,tablespace_name,file_id,ONLINE_STATUS from dba_data_files;
2 resetlogs打开数据库 ,注意更改undo相关参数为manual;
alter system set “_allow_resetlogs_corruption”=true scope=spfile;
alter system set audit_trail=none scope=spfile;
alter system set undo_management=MANUAL scope=spfile;
3 启动后rename 有问题的datafile
alter database rename file ‘D:\ORACLE\PRODUCT\10.2.0\DBHOME_1\DATABASE\MISS
ING00004’ to ‘d:\orcldata\xepacs\users01.dbf’;
4 推进scn(本文只写一种方式,不同版本可用方式不用)
由于scn较低,需要重新resetlogs调成一致,或者用bbed调整;
ALTER SESSION SET EVENTS ‘IMMEDIATE TRACE NAME ADJUST_SCN LEVEL 1’;
LEVEL: Level 1 is usually sufficient - it raises the SCN to 1 billion
5 将文件online
startup mount;
SQL> recover until cancel;
完成介质恢复。
SQL> alter database datafile 4 online;
数据库已更改。
SQL> alter database open resetlogs;
数据库已更改。