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 ?
指定日志: {=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>
ORA-16433 The database must be opened in read write mode故障解决的更多相关文章
- Oracle案例04——ORA-39700: database must be opened with UPGRADE option
Oracle11.2.0.3数据库通过rman备份到Oracle11.2.0.4上做还原,报需要升级的错误,具体处理步骤如下: 一.错误信息 SQL> alter database open r ...
- ORA-39700: database must be opened with UPGRADE option【转】
1. 错误 数据库升级后(从11.2.0.1升级到11.2.0.4)启动报错 SQL> startup ORACLE instance started. Total System Globa ...
- Oracle 数据库 Database Express Edition 11g Release 2 (11.2) 错误解决集锦(安装方面)
前言:第一次接触数据库,想下载个oracle试玩下(虽然听说一般大企业才用),到 官网下载 了个简易版 XE 版本,安装时要注意记住自己输入的数据库密码(口令) 还有安装路径不能含有空格(Do no ...
- MySQL:Error : Tablespace for table '`database`.`temp`' exists. Please DISCARD the tablespace before IMPORT.解决办法
今天在navicat上操作mysql数据库表,突然没有响应了.随后重启,mysql服务也终止了.随后启动服务,检查表,发现一张表卡没了,就重新添加一张表.报了一个错: Error : Tablespa ...
- Oracle 数据库 Database Express Edition 11g Release 2 (11.2) 错误解决集锦(使用语法)
ORA-14552: 在查询或 DML 中无法执行 DDL, 提交或回退 PL/SQL“ORA-14551:无法在查询中执行DML操作 解决:在声明函数时加上: PRAGMA AUTONOMOUS_T ...
- [Oracle][RMAN] Use RMAN to Migrate database from CentOS_5-11201-SingleDB to OracleLinux_5-11204-SingleDB
リンク:How to Move/Restore DB to New Host and File System using RMAN (Doc ID 1338193.1)https://docs.ora ...
- ORA 各种oraclesql错误
ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出 ...
- Oracle的tnsnames.ora配置(PLSQL Developer)
首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...
- Ways to access Oracle Database in PostgreSQL
Today, organizations stores information(data) in different database systems. Each database system ha ...
随机推荐
- blfs(systemd版本)学习笔记-安装、配置和使用wpa_supplicant无线网络连接工具
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! wireless项目地址:http://www.linuxfromscratch.org/blfs/view/stable-sy ...
- [HTML/CSS]浮动的那点事儿
元素是怎样浮动 元素的水平方向浮动,意味着元素只能左右移动而不能上下移动. 一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 浮动元素之后的元素将围绕它. 浮动元素 ...
- CSS效果:这里有你想要的CSS3漂亮的自定义Checkbox各种复选框
在原来有一篇文章写到了<CSS效果篇--纯CSS+HTML实现checkbox的思路与实例>. 今天这篇文章主要写各种自定义的checkbox复选框,实现如图所示的复选框: 大致的html ...
- 2018-10-19 Chrome插件实现GitHub代码离线翻译v0.0.4
续前文Chrome插件实现GitHub代码翻译v0.0.3. 添加了对驼峰命名的支持. 由于调用浏览器插件-离线英汉词典进行词汇翻译, 因此也不依赖于任何在线翻译服务. Chrome插件: 官网链接 ...
- SD: 关于价格过程的确定
在SD模块中,定价过程是一个非常重要的功能,在单据中使用哪个定价过程取决于三个因素 1)销售区域(sale Area) 该数据来自Sold-to Party的客户维护的销售数据. 2)客户主数据的定价 ...
- 20.Odoo产品分析 (三) – 人力资源板块(1) – 员工目录(1)
查看Odoo产品分析系列--目录 人力资源指在一个国家或地区中,处于劳动年龄.未到劳动年龄和超过劳动年龄但具有劳动能力的人口之和.狭义讲就是企事业单位独立的经营团体所需人员具备的能力(资源).(解释来 ...
- finally知识讲解
finally语句一定会执行吗,很多人认为一定会,其实未必,只有与 finally 相对应的 try 语句块得到执行的情况下,finally 语句块才会执行.假如在try语句之前执行了return操作 ...
- C#字典Dictionay多线程读是否是安全的
答案:是线程安全的,只读不写多线程下,完全不需要加锁! 测试代码: using System; using System.Diagnostics; using System.Threading; us ...
- Python 实例方法、类方法、静态方法的区别与作用
Python中至少有三种比较常见的方法类型,即实例方法,类方法.静态方法.它们是如何定义的呢?如何调用的呢?它们又有何区别和作用呢?且看下文. 首先,这三种方法都定义在类中.下面我先简单说一下怎么定义 ...
- SQL中常用系统函数
--1 CONVERT(数据类型,表达式),CAST( 表达式 AS 数据类型) 转变数据类型--将数字转化为字符串SELECT CONVERT(varchar(2),12)+CONVERT(varc ...