[@more @]sql
[oracle@spreader oracle]$ sqlplus /nolog
[uniread] Loaded history (2158 lines)數據庫
SQL*Plus: Release 10.1.0.2.0 - Production on Mon Feb 27 11:37:09 2006oracle
Copyright (c) 1982, 2004, Oracle. All rights reserved..net
SQL> connect / as sysdba
Connected.
SQL> startup
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.日誌
Total System Global Area 188743680 bytes
Fixed Size 778036 bytes
Variable Size 162275532 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
ORA-00214: controlfile '/home/oracle/oradata/item/control01.ctl' version 10232896 inconsistent with file
'/home/oracle/oradata/item/control02.ctl' version 9190433get
Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning and Data Mining options
[uniread] Saved history (2163 lines)it
SQL> create pfile='/home/oracle/init.ora' from spfile;io
File created.class
編輯init.ora,把'/home/oracle/oradata/item/control02.ctl'去掉,而後再重啓數據庫thread
[oracle@spreader oracle]$ sqlplus /nolog
SQL> connect / as sysdba
Connected to an idle instance.
SQL> create spfile from pfile='/home/oracle/init.ora';
ERROR:
ORA-01034: ORACLE not available
File created.
SQL> shutdown immediate
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 188743680 bytes
Fixed Size 778036 bytes
Variable Size 162275532 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
SQL> alter database mount;
alter database mount
*
ERROR at line 1:
ORA-00214: controlfile '/home/oracle/oradata/item/control01.ctl' version 10232896 inconsistent with file
'/home/oracle/oradata/item/control03.ctl' version 9190433
再編輯init.ora,把'/home/oracle/oradata/item/control03.ctl'去掉,而後再按照上面步驟重啓數據庫
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 188743680 bytes
Fixed Size 778036 bytes
Variable Size 162275532 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
SQL> alter database mount;
alter database mount
*
ERROR at line 1:
ORA-00227: corrupt block detected in controlfile: (block 175, # blocks 1)
ORA-00202: controlfile: '/home/oracle/oradata/item/control01.ctl'
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01507: database not mounted
惟一的控制文件都有問題了,FT,從新編輯init.ora文件,去掉控制文件一,而留下控制文件二和三,而後再重啓數據庫
SQL> startup nomount;
ORACLE instance started.
Total System Global Area 188743680 bytes
Fixed Size 778036 bytes
Variable Size 162275532 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
SQL> alter database mount;
Database altered.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-16038: log 2 sequence# 2136 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 2 thread 1: '/home/oracle/oradata/item/redo02.log'
這下能夠MOUNT起來了,可是出現ORA-19809,這個簡單,就是recovery files空間滿了引發的,再整理下這個空間,而後alter database open 就好了。
步驟:
1 首先刪除掉不必的備份,例如歸檔日誌
2 進入RMAN整理空間 [oracle@spreader oracle]$ rman RMAN> connect target / RMAN> crosscheck archivelog all; RMAN> delete expired archivelog all;