ORA-00214 控制文件错误

原文地址: http://blog.sina.com.cn/s/blog_48e13c9e0100fop4.html
数据库断电重启后出现该错误:
 
SQL> startup
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
ORA-00214: ???? 'D:\DISK3\CONTROL01.CTL' ?? 8292532 ???
'D:\DISK9\CONTROL03.CTL' ?? 8292528 ???
cause: An ORA-00214 is issued whenever Oracle detects an inconsistency between two
mirrored copies of the control file. 


All copies of the control file must have the same internal sequence number for
Oracle to start up the database or shut it down in normal or immediate mode.


If the database is running and the checkpoint in the file header could not be
advanced the datafile will be taken offline.


Typical scenarios in which you may receive an ORA-00214 include:


1. You have restored the control file from backup, but forgot
  to copy it onto all of the mirrored copies of the control file
  as listed in the "CONTROL_FILES" parameter in the "init.ora&
quot; file  for this instance (or config.ora in an ifile configuration).


2. You have moved one or more copies of the control file to a
  different location while the database was up and running.


3. You accidentally overwrote one of the copies of the control file
  with an old copy.


4. The database or the system crashed while the mirrored copies of
  the control file were being updated, causing them to be out of sync.


5. You are restoring a database backup that was improperly taken
  with the database up and running ("fuzzy" backup).




fix:


The solution consists in opening the database with a single good copy
of the control file and then shutting the database down and copying
that version of the control file onto the other mirrored copies.
That will cause the next startup to succeed.  The steps to be followed
are:


1. If the database is still up, do a shutdown abort now.


2. Edit the init.ora file for this instance (or config.ora in an ifile
  configuration).


        Find the CONTROL_FILES parameter and modify it to include
        just ONE copy of the control file that you have reasons to
        believe is up-to-date.  For example, if you only have two
        mirrored copies X and Y of the control file:


                CONTROL_FILES = (X, Y)


        and you know you have accidentally overwritten X with an old
        copy, make
       
                CONTROL_FILES = (Y)


        If you are not sure about it, choose any one of the control file
        copies and remove or comment out all the other copies from the
        CONTROL_FILES parameter.


3. Start up the database in restricted mode.


        STARTUP RESTRICT


        If the database comes up fine, move on to Step 4.


        If instead you get ORA-1122, ORA-1110, and ORA-1207, go back to
        Step 2 and make the CONTROL_FILES parameter point to another one
        of the mirrored copies.  If you have already tried each and
        every one of the mirrored copies unsuccessfully, you must create
        a new control file for the database.  See the Solution Reference
        to PR entry 1012929.6 ("How to Recreate the Control File".


        If you get ORA-1113 and ORA-1110 pointing to one of the datafiles,
        it means the copy of the control file you picked is good, but
        the referenced datafile must be recovered before the database can be
        opened.  Try issuing a RECOVER DATABASE command and applying the
        logs you are prompted for.  You may have to resort to the online
        logs to complete media recovery.  For further details, see the
        Solution Reference to PR entry 1012943.6 on ORA-1113.  Once the
        datafile is recovered, issue an ALTER DATABASE OPEN.


4. Shut the database down (normal or immediate).


5. Make all copies of the control file consistent.


        Copy the good mirrored copy of the control file that you just used
        to bring the database up onto all other copies, as originally listed
        in the CONTROL_FILES parameter of your init.ora file (or config.ora
        in an ifile configuration).


6. Restore the CONTROL_FILES parameter to its original value.


        Edit the init.ora file for this instance (or config.ora in an ifile
        configuration) to make the CONTROL_FILES parameter include
        all mirrored copies of the control file again.


7. Start up the database.
 
 
上面说的比较复杂,本例处理的方法是:把原来不一致的控制文件(control03.ctl)改名后拷贝了control01.ctl到control03.ctl控制文件所在的目录下并命名为control03.ctl
然后数据库正常启动了
应该是改掉版本低的那个控制文件的名字,这个待确认。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值