ORA-16433 The database must be opened in read write mode故障解决

一、首先删除原有控制文件并新建控制文件

1、找到控制文件位置

SQL> show parameter control_files;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

control_files string C:\APP\ADMINISTRATOR\ORADATA\C

                                                 METEST\CONTROLFILE\O1_MF_9OZDT

                                                 FYF_.CTL, C:\APP\ADMINISTRATOR

                                                 \FLASH_RECOVERY_AREA\CMETEST\C

                                                 ONTROLFILE\O1_MF_9OZDTG4K_.CTL

2、重建控制文件(通过控制文件备份重建,或者通过现有控制文件重建)

备份控制文件到文本文件(查看控制文件具体内容)

SQL> alter database backup controlfile to trace as '/home/oracle/ctl.txt';

Database altered.

linux下可以使用:

SQL> host strings  /home/oracle/control03.ctl  >  /home/oracle/ctl.txt

SQL> host cat /home/oracle/ctl.txt

从生成的文件中找到控制文件的内容,复制成sql脚本

3、删除控制文件

4、由spfile创建pfile,并添加下面的三个参赛参数

_allow_error_simulation=TRUE

_allow_resetlogs_corruption=TRUE

_allow_terminal_recovery_corruption=TRUE

 

二、具体恢复流程如下:

C:\Users\Administrator>sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 9月 30 15:40:24 2014

Copyright (c) 1982, 2010, Oracle. All rights reserved.

已连接到空闲例程。

SQL> startup pfile='C:\app\Administrator\product\11.2.0\dbhome_1\database\pfilec

me.ora' mount;

ORACLE 例程已经启动。

Total System Global Area 1060585472 bytes

Fixed Size 2182504 bytes

Variable Size 771752600 bytes

Database Buffers 281018368 bytes

Redo Buffers 5632000 bytes

ORA-00205: ?????????, ??????, ???????

SQL> select status from v$instance;

STATUS

------------------------

STARTED

SQL> @e:/ctl.sql;

控制文件已创建。

SQL> recover database until cancel using backup controlfile;

ORA-00279: ?? 4658923 (? 09/30/2014 15:31:26 ??) ???? 1 ????

ORA-00289: ??:

E:\FLASH_RECOVERY_AREA\CMETEST\ARCHIVELOG\2014_09_30\O1_MF_1_1_%U_.ARC

ORA-00280: ?? 4658923 (???? 1) ??? #1 ?

指定日志: {<RET>=suggested | filename | AUTO | CANCEL}

auto

ORA-00308: ????????

'E:\FLASH_RECOVERY_AREA\CMETEST\ARCHIVELOG\2014_09_30\O1_MF_1_1_%U_.ARC'

ORA-27041: ??????

OSD-04002: ????????????

O/S-Error: (OS 2) ??????????????????????

ORA-00308: ????????

'E:\FLASH_RECOVERY_AREA\CMETEST\ARCHIVELOG\2014_09_30\O1_MF_1_1_%U_.ARC'

ORA-27041: ??????

OSD-04002: ????????????

O/S-Error: (OS 2) ??????????????????????

ORA-01547: ??: RECOVER ??? OPEN RESETLOGS ???????

ORA-01194: ?? 1 ?????????????

ORA-01110: ???? 1:

'C:\APP\ADMINISTRATOR\ORADATA\CMETEST\DATAFILE\O1_MF_SYSTEM_9OZDTXRQ_.DBF'

SQL> select file#,CHECKPOINT_CHANGE#,LAST_CHANGE# from v$datafile order by 1;

     FILE# CHECKPOINT_CHANGE# LAST_CHANGE#

---------- ------------------ ------------

         1 4658923

         2 4658923

         3 4658923

         4 4658923

         5 4658923

         6 4658923

已选择6行。

SQL> select file#,CHECKPOINT_CHANGE# from v$datafile_header order by 1;

     FILE# CHECKPOINT_CHANGE#

---------- ------------------

         1 4658923

         2 4658923

         3 4658923

         4 4658923

         5 4658923

         6 4658923

已选择6行。

SQL> select CHECKPOINT_CHANGE# from v$database;

CHECKPOINT_CHANGE#

------------------

           4658920

SQL> shutdown immediate;

ORA-01109: ??????

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup nomount pfile='C:\app\Administrator\product\11.2.0\dbhome_1\databas

e\pfilecme.ora';

ORACLE 例程已经启动。

Total System Global Area 1060585472 bytes

Fixed Size 2182504 bytes

Variable Size 771752600 bytes

Database Buffers 281018368 bytes

Redo Buffers 5632000 bytes

SQL> alter database mount;

数据库已更改。

SQL> alter session set events '10015 trace name ADJUST_SCN level 10';

会话已更改。

SQL> alter database open;

alter database open

*

第 1 行出现错误:

ORA-01589: ??????????? RESETLOGS ? NORESETLOGS ??

SQL> alter database open resetlogs;

数据库已更改。

SQL> select open_mode from v$database;

OPEN_MODE

--------------------

READ WRITE

SQL> alter system switch logfile;

系统已更改。

SQL>

时间: 2024-10-03 17:26:33

ORA-16433 The database must be opened in read write mode故障解决的相关文章

ORA-01155: the database is being opened, closed, mounted or dismounted

ora.scan1.vip  ora....ip.type ONLINE    ONLINE    m3           [grid@m1 ~]$ crs_start ora.mes.db Attempting to start `ora.FRA.dg` on member `m2` Attempting to start `ora.mes.db` on member `m3` Attempting to start `ora.mes.db` on member `m1` Start of

Microsoft JET Database Engine 错误 &#039;80004005&#039; 未指定的错误的完美解决方法_应用技巧

一般情况下asp可以正常运行,但只要连接数据库就提示,Microsoft JET Database Engine 错误 '80004005',我的电脑因为用批处理清理文件,所以不能运行了, 只1.查看数据库连接语句没有发现错误: 2.查看文件夹的权限已经全部给了everyone: 3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %SystemRoot%/temp/ 的权限不够 解决:%SystemRoot%/temp/ 的权限加上(IUSER_

Microsoft JET Database Engine 错误 '80004005' 未指定的错误的完美解决方法

一般情况下asp可以正常运行,但只要连接数据库就提示,Microsoft JET Database Engine 错误 '80004005',我的电脑因为用批处理清理文件,所以不能运行了, 只1.查看数据库连接语句没有发现错误: 2.查看文件夹的权限已经全部给了everyone: 3.打开数据库的同时,系统会在临时文件夹 %SystemRoot%/temp/ 下创建临时文件,而 %SystemRoot%/temp/ 的权限不够 解决:%SystemRoot%/temp/ 的权限加上(IUSER_

小麦苗BLOG文章索引

小麦苗BLOG文章索引            自从2014年7月1号开始写blog到2015年5月5日,历时10个月的时间,大概写了90篇文章,这blog多了就乱了,今天抽空出来整理整理,方便大家也方便自己阅读,本文将一直更新,另外,最后我把所有的blog文章全列出来,可能会有用.    小麦苗的所有文章:itpub文章链接-小麦苗.zip     2015年06月03日更新一次,我写的blog数量:109 篇    2015年07月03日更新一次,我写的blog数量:126 篇    2016

Oracle Active database duplication

001 理论基础 active database duplication :A duplicate database that is created over a network without restoring backups of the target database. This technique is an alternative to backup-based duplication. 意即:duplicate数据库不需要通过还原目标数据库的备份,而是直接通过网络而创建.这项技术是

Oracle10G Physical Standby Database笔记

oracle|笔记 试验环境primary server:  windows2000 server + oracle 10.0.1.0.2  ORACLE_SID:dgtest  ORACLE_HOME: D:\oracle\product\10.1.0\db_1standby server: windows XP pro + oracle 10.0.1.0.2ORACLE_SID:dgtestORACLE_HOME: D:\oracle\product\10.1.0\db_1   配置步骤首先

创建Oracle sharding database的例子

一.Oracle sharding database的一些概念 (1)Table family: 有相关关联关系的一组表,如客户表(customers),订单表(order),订单明细表(LineItems).这些表之间往往有外键约束关系,可以通过如下2中方式建立table family: (1.1)通过CONSTRAINT [FK_name] FOREIGN KEY (FK_column) REFERENCES [R_table_name]([R_table_column]) --这种关系可以

解决SQL SERVER数据库备份时出现“操作系统错误5(拒绝访问)。BACKUP DATABASE 正在异常终止。”错误的解决办法_MsSql

SQL SERVER数据库进行备份时出现"操作系统错误5(拒绝访问).BACKUP DATABASE 正在异常终止."错误.我们应该如何解决这个问题?小编今天为大家推荐一个解决办法. 一般备份文件选择的目录为磁盘根目录或备份所选分区未授予sqlserver用户读写权限时会出现此错误. 解决办法就是给sqlserver用户授予权限:    选择要备份的文件夹 ,右键-->属性-->安全-->看下"组或用户"是否包涵Authenticated User

oracle 常用命令

oracle 第一章:日志管理 1.forcing log switches sql> alter system switch logfile; 2.forcing checkpoints sql> alter system checkpoint; 3.adding online redo log groups sql> alter database add logfile [group 4] sql> ('/disk3/log4a.rdo','/disk4/log4b.rdo')