今天上班后,启动本人笔记本上的数据库,居然报错起不来;忙活了5分钟,搞定了,下面给出问题解决的步骤,供大家批评指正.
C:UsersAdministrator>sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on 星期五 2月 17 09:06:41 2012
Copyright (c) 1982, 2006, Oracle.?All Rights Reserved.
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area?612368384 bytes
Fixed Size 1292036 bytes
Variable Size 331352316 bytes
Database Buffers 272629760 bytes
Redo Buffers 7094272 bytes
数据库装载完毕。
ORA-16038: 日志 2 序列号 584 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 2 线程 1: 'Y:ORACLEORADATAAIDUREDO02.LOG'
[@more@]
检查是否是归档模式
SQL> archive log list;
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 584
下一个存档日志序列 584
当前日志序列 586
检查归档日志的归档情况
SQL> select name ,recid from v$archived_log;
NAME RECID
---------- ......
C:ORACLEO1_MF_1_581_7JJ3P401_.ARC 44
C:ORACLEO1_MF_1_582_7MJRMVWX_.ARC 45
C:ORACLEO1_MF_1_583_7MK5MJCK_.ARC 46
已选择46行。
检查redo文件的状态,发现redo2的状态为inactive,放心了不少.
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME
---------- ---------- ---------- ---------- ---------- --- ----------------------------- -------------------
1 1 586 52428800 1 NO CURRENT 29058619 2012-02-15 14:17:02
3 1 585 52428800 1 NO INACTIVE 29013803 2012-02-14 13:07:46
2 1 584 52428800 1 NO INACTIVE 28967584 2012-02-13 12:49:52
开始检查相关的SCN,看是否一致,最后发现db的scn等于file的scn
SQL> select checkpoint_change# from v$database;
CHECKPOINT_CHANGE#
------------------
29121580
SQL> select name,file#,checkpoint_change# from v$datafile
NAME FILE# CHECKPOINT_CHANGE#
--------------------------------------------- ---------- ------------------
1 29121580
2 29121580
3 29121580
4 29121580
5 29121580
......
18 29121580
已选择17行。
检查redo的scn,发现数据库不需要介质恢复
SQL> select sequence#,status,first_change# from v$log;
SEQUENCE# STATUS FIRST_CHANGE#
---------- ---------------- -------------
586 CURRENT 29058619
585 INACTIVE 29013803
584 INACTIVE 28967584
得出结论:数据库的归档出现了问题,着手检查archive的设置
SQL> show parameter archi
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target integer 0
log_archive_dest_1 string
log_archive_dest_10 string
log_archive_dest_2 string
log_archive_dest_state_1 string enable
…...
log_archive_duplex_dest string
log_archive_format string ARC%S_%R.%T
设置归档日志的路径,重新启动数据库,启动成功.
SQL> alter system set log_archive_dest_1='LOCATION=c:oracle' scope=spfile;
系统已更改。
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 612368384 bytes
Fixed Size 1292036 bytes
Variable Size 339740924 bytes
Database Buffers 264241152 bytes
Redo Buffers 7094272 bytes
数据库装载完毕。
数据库已经打开。
数据库可以正常打开后,检查归档日志的归档情况
SQL>select * from v$log;
RECID NAME SEQUENCE# FIRST_CHANGE#
---- ----------------------------- -------------------- ----------------
......
46 583 28929595
47 584 28967584
48 585 29013803
49 586 29058619
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/32980/viewspace-1057382/
,如需转载,请注明出处,否则将追究法律责任。