此问题,其实由于归档日志已满导致的。
解决方法:
1、删除老旧的归档日志;
2、增加归档日志大小;
下面详细案例,仅供参考;
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\cimer>sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 1月 4 11:01:18 2013
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> startup
ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它
SQL> alter database open
2 ;
alter database open
*
第 1 行出现错误:
ORA-16014: 日志 3 的序列号 187 未归档, 没有可用的目的地
ORA-00312: 联机日志 3 线程 1:
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\REDO03.LOG'
ORA-00312: 联机日志 3 线程 1: 'D:\DEMO\REDO3_2.LOG'
SQL> show parameter db_recovery_file;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string D:\oracle\product\10.2.0/flash
_recovery_area
db_recovery_file_dest_size big integer 8G
SQL> alter system archive log current;
alter system archive log current
*
第 1 行出现错误:
ORA-01109: 数据库未打开
SQL> alter system switch logfile;
alter system switch logfile
*
第 1 行出现错误:
ORA-01109: 数据库未打开
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 603979776 bytes
Fixed Size 1250380 bytes
Variable Size 104860596 bytes
Database Buffers 490733568 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
ORA-16038: 日志 3 序列号 187 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1:
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\REDO03.LOG'
ORA-00312: 联机日志 3 线程 1: 'D:\DEMO\REDO3_2.LOG'
SQL> atler database open;
SP2-0734: 未知的命令开头 "atler data..." - 忽略了剩余的行。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-16014: 日志 3 的序列号 187 未归档, 没有可用的目的地
ORA-00312: 联机日志 3 线程 1:
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\REDO03.LOG'
ORA-00312: 联机日志 3 线程 1: 'D:\DEMO\REDO3_2.LOG'
SQL> alter system set db_recovery_file_dest_size=10G scope=both;
系统已更改。
SQL> alter database open;
数据库已更改。
SQL> select * from v$instance;
INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
HOST_NAME
----------------------------------------------------------------
VERSION STARTUP_TIME STATUS PAR THREAD# ARCHIVE
----------------- -------------- ------------ --- ---------- -------
LOG_SWITCH_WAIT LOGINS SHU DATABASE_STATUS INSTANCE_ROLE ACTIVE_ST
--------------- ---------- --- ----------------- ------------------ ---------
BLO
---
1 oracle
PCB-CIMER
10.2.0.1.0 04-1月 -13 OPEN NO 1 STARTED
INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
HOST_NAME
----------------------------------------------------------------
VERSION STARTUP_TIME STATUS PAR THREAD# ARCHIVE
----------------- -------------- ------------ --- ---------- -------
LOG_SWITCH_WAIT LOGINS SHU DATABASE_STATUS INSTANCE_ROLE ACTIVE_ST
--------------- ---------- --- ----------------- ------------------ ---------
BLO
---
ALLOWED NO ACTIVE PRIMARY_INSTANCE NORMAL
NO
此时,数据库已经起来,恢复正常了。