D:/ORACLE/ORADATA/ORCL/REDO03.LOG 被不正确的文件覆盖了
属于联机日志损坏,修复一下就好了
c:/cd oracle9/ora92/bin 总之是 bin 文件进去就行
c:/......bin>sqlplus /nolog
SQL>connect sys/sting as sysdba
SQL> shutdown abort ; ORACLE 例程已经关闭
SQL> startup nomount ; ORACLE 例程已经启动。
SQL>startup 数据库装载完毕之后会提示出错的联机日志块
进行不完全恢复:
SQL> recover database until cancel 仿佛要多做几次
以sys登录为sysdba
sqlplus /NOLOG
SQL>connect sys/用户口令as sysdba
SQL>shutdown normal
SQL>startup mount
SQL>alter database open
SQL>shutdown normal
SQL>startup
结果出现
SQL> alter database open
2 ;
alter database open
看看是哪个数据文件出现问题 ,然后不断反复尝试
SQL> alter database create datafile XXX; XXX 表示错误的数据文件号
SQL> alter database datafile XXX offline drop; 重复上述步骤,并且不断陆连接,直到不报错为止
也许能用的上的:
SQL>alter database clear unarchivelog logfile group XXX, XXX表示你的日志文件组,进行恢复
SQL>alter database open resetlogs; 从新打开数据库用日志文件
其他人的回答
方法 一
重新创建同名的dbf文件,在从备份文件里进行恢复
如果这个文件不需要了,
shutdown immediate
startup mount
alter database datafile 'c:/xxx.dbf' drop offline (这里的语法记的不是很清楚,自己查一下)
alter database open
方法 二
[Q]丢失一个数据文件,但是没有备份,怎么样打开数据库
[A]如果没有备份只能是删除这个数据文件了,会导致相应的数据丢失。
SQL>startup mount
--ARCHIVELOG模式命令
SQL>Alter database datafile 'file name' offline;
--NOARCHIVELOG模式命令
SQL>Alter database datafile 'file name' offline drop;
SQLl>Alter database open;
注意:该数据文件不能是系统数据文件
SQL>select group#,sequence#,archived,status from v$log; 查看连机日志文件的一些属性
我进行操作的步骤,如下
SQL> alter database clear unarchived logfile group 1
2 /
alter database clear unarchived logfile group 1
*
ERROR 位于第 1 行:
ORA-01624: 线程1的紧急恢复需要日志1
ORA-00312: 联机日志 1 线程 1: 'D:/ORACLE/ORADATA/OEMREP3/REDO01.LOG'
SQL> recover database until cancel
ORA-00283: 恢复会话因错误而取消
ORA-01124: 无法恢复数据文件 1 - 文件在使用中或在恢复中
ORA-01110: 数据文件 1: 'D:/ORACLE/ORADATA/OEMREP3/SYSTEM01.DBF'