ORA-03113解决方案
1 启动数据库时,报如下错误
C:\Users\Administrator>set oracle_sid=wnpmpdat
SQL> conn /as sysdba
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 2020970496 bytes
Fixed Size 2177168 bytes
Variable Size 1174407024 bytes
Database Buffers 838860800 bytes
Redo Buffers 5525504 bytes
数据库装载完毕。
ORA-03113: 通信通道的文件结尾
进程 ID: 292
会话 ID: 127 序列号: 3
2 启动到MOUNT状态
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on 星期五 5月 18 17:34:01 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
SQL> conn /as sysdba
已连接到空闲例程。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 2020970496 bytes
Fixed Size 2177168 bytes
Variable Size 1174407024 bytes
Database Buffers 838860800 bytes
Redo Buffers 5525504 bytes
数据库装载完毕。
3 查询日志组的时间点
SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
会话已更改。
SQL> desc v$log;
名称 是否为空? 类型
----------------------------------------- -------- ---------------------------
GROUP# NUMBER
THREAD# NUMBER
SEQUENCE# NUMBER
BYTES NUMBER
BLOCKSIZE NUMBER
MEMBERS NUMBER
ARCHIVED VARCHAR2(3)
STATUS VARCHAR2(16)
FIRST_CHANGE# NUMBER
FIRST_TIME DATE
NEXT_CHANGE# NUMBER
NEXT_TIME DATE
SQL> select first_time,group# from v$log;
FIRST_TIME GROUP#
------------------- ----------
2012-05-16 09:18:27 1
2012-05-16 18:01:00 3
2012-05-16 09:19:04 2
4 恢复到某一个时间点
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-00264: 不要求恢复
SQL> recover database until time '2012-05-16 18:01:00';
完成介质恢复。
5 启动到resetlogs状态
SQL> alter database open resetlogs;
数据库已更改。
6 关闭数据库,然后再次启动就可以了
SQL> shutdown
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 2020970496 bytes
Fixed Size 2177168 bytes
Variable Size 1174407024 bytes
Database Buffers 838860800 bytes
Redo Buffers 5525504 bytes
数据库装载完毕。
数据库已经打开。
SQL>