`

ora-01033:oracle initialization or shutdown in progress 解决方法

 
阅读更多

首先:问题的产生原因,出现这个错误是因为我将\oracle\product\10.1.0\oradata\oral下的一个文件删除掉后出现的。

利用sql语句语句创建表空间时弄错了,就一时心急把创建的文件删除了。结果问题就出来了。sysdba可以登录,但是在使用中就出现“数据库未打开,仅允许在固定表/视图中查询”,而normal用户无法登录使用,出现ORA-01033: ORACLE initialization or shutdown in progress 的错误。

分析:这个错误的原因应该是Oracle在启动后,用户登录时是要将方案中原有配置信息装载进入,装载过程中配置中有文件未找到,所以就报出错误。

解决过程:

C:\Documents and Settings\DHai>sqlplus /nolog

SQL*Plus: Release 10.1.0.2.0 - Production on 星期一 9月 28 14:35:38 2009

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

SQL> connect sys/123 as sysdba;
已连接。
SQL> shutdown normal
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area 171966464 bytes
Fixed Size 787988 bytes
Variable Size 145750508 bytes
Database Buffers 25165824 bytes
Redo Buffers 262144 bytes
数据库装载完毕。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项


SQL> alter database open resetlogs;
alter database open resetlogs
*
第 1 行出现错误:
ORA-01157: 无法标识/锁定数据文件 6 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 6: 'C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORAL\FSCREDIT40'


SQL> alter database datafile 6 offline drop;

数据库已更改。

SQL> alter database open resetlogs;

数据库已更改。

SQL> alter database datafile 6 offline drop;

数据库已更改。

SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01531: 例程已打开数据库


SQL>shutdown normal
提示:数据库已经关闭
已经卸载数据库
ORACLE 例程已经关闭

SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area 171966464 bytes
Fixed Size 787988 bytes
Variable Size 145750508 bytes
Database Buffers 25165824 bytes
Redo Buffers 262144 bytes
数据库装载完毕。

到此,问题解决了。
=============================================

============================================

网上另外的文章

=====================================

============================

oracle一个问题的解决方法:Error:ORA-01033:ORACLE initialization or shutdown in progress2009-07-14 18:42从网上找了一些资料,最后加上自己的实践终于解决了

后来发现原因既然是:用系统清理工具把系统垃圾清理了一番,结果在打开oracle 数据库时出现了错误:

解决方法在DOS环境下sqlplus /NOLOGSQL>connect sys/sys as sysdbaSQL>shutdown normalSQL>startup mountSQL>alter database open;第 1 行出现错误:ORA-01157: 无法标识/锁定数据文件 6 - 请参阅 DBWR 跟踪文件ORA-01110: 数据文件 6: ''D:\ORACLE\ORADATA\ORAGWH\INDX01.DBF''出现这种问题时继续输入SQL> conn sys/sys as sysdba;已连接。SQL> alter database datafile 6 offline drop;直到用scott登陆为止SQL> conn scott/tiger然后接着输入即可SQL>shutdown normalSQL>startup本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/henlson/archive/2007/07/18/1696966.aspx

在输入上述命令的时候,可能会出现下面的问题:

ORA-00313: 无法打开日志组 1 (线程 1) 的成员

解决方法如下:

运行Oracle----Integrated Management Tools----SQLPlus WorkSheet

SQL> connect / as sysdba;

已连接。

SQL> shutdown immediate;

ORA-01109: 数据库未打开

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup;

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

ORA-00313: 无法打开日志组 1 (线程 1) 的成员

ORA-00312: 联机日志 1 线程 1: 'C:\ORACLE\ORADATA\ORCL\REDO01.LOG'

查看C:\ORACLE\ORADATA\myoracle\REDO01.LOG还在,但是REDO02.LOG,REDO03.LOG被误删了.

赶紧换个例程OEMREP试试,结果还是一样的错误!

蒙了,难道要重装数据库不成?有什么办法可以解决这个问题呢?


解决办法:

SQL> shutdown immediate;

ORA-01109: 数据库未打开

已经卸载数据库。

SQL> startup mount;

ORACLE 例程已经启动。

SQL>select * from v$log;

GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIME

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

1 1 0 104857600 1 NO UNCURRENT 670680 05-12月-07

2 1 15 104857600 1 NO unactive 696119 06-12月-07

3 1 0 104857600 1 NO Unactive 650182 05-12月-07

已选择3行。

alter database clear unarchived logfile group 1; /*重建日志文件*/

数据库已经更改.

alter database clear unarchived logfile group 2;

数据库已经更改.

alter database clear unarchived logfile group 3;

数据库已经更改.

SQL>shutdown;

已经卸载数据库。

ORACLE 例程已经关闭。

SQL>startup;

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

数据库已经打开。

问题解决!

但是,在对myoracle 例程进行同样的操作后,也不知道是哪里出了问题,

SQL>startup;

ORACLE 例程已经启动。

Total System Global Area 135338868 bytes

Fixed Size 453492 bytes

Variable Size 109051904 bytes

Database Buffers 25165824 bytes

Redo Buffers 667648 bytes

数据库装载完毕。

ORA-03113: 通信通道的文件结束

在网上查找资料,出现这样的问题原因很多,一般是网络不通,或者是init.ora、C:\oracle\ora92\network\admin\sqlnet.ora或tnsnames.ora有问题.显然这些不适合我.我的两个例程,一个可以正常使用,另外一个有问题的!

在我关闭数据库后,重新打开,执行:

SQL>connect "/as sysdba";

SQL>select * from scott.emp;

ORA-27101 shared memory realm does not exist -

出现这个错误也有很多解释,一般要检查init.ora文件的内存配置是否有问题,但是在没有打开数据库的时候执行命令,也会出现这样的错误提示,我的属于后者,是由于没有挂载数据库造成的,这里提醒一下.

后来又乱琢磨了一回,还出现了错误:

ORA-24324: 未初始化服务句柄

ORA-01041: 内部错误,hostdef 扩展名不存在

这是越来越乱了,无奈之下,只好重头再来整理一遍,从重新配置日志文件开始,操作一样,但是奇迹出现了,错误消失了,也不提示通信通道文件结束了,数据库正常了,呵呵,但是很晕!


解决问题知识整理:

首先,执行下面的语句看看group1是不是current日志组

select * from v$log;

如果被删除的日志不是当前日志组的成员,比较简单

alter database clear logfile group 1;

如果你的库是非归档的,或许要用下面的语句

alter database clear unarchived logfile group 1;

如果是当前日志组损坏,但是数据库是正常关闭的,上面的办法也可以使用

如果日志组中有活动的事务,那么可能需要利用备份来恢复了:过程如下:

解决过程:Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\5201314>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 5月 27 11:19:52 2006Copyright (c) 1982, 2005, Oracle. All rights

reserved.

SQL> conn sys/dd as sysdba

已连接。

SQL> startup mount

ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它

SQL> recover database until time '2006-05-19 13:45:02'; /*恢复*/

/*(recover database until cancel;alter database resetlogs;重建日志文件),另外的写法,不知哪个对.*/

完成介质恢复。

SQL> alter database open resetlogs;

数据库已更改。

SQL> shutdown immediate;

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 205520896 bytes

Fixed Size 1248092 bytes

Variable Size 79692964 bytes

Database Buffers 117440512 bytes

Redo Buffers 7139328 bytes

数据库装载完毕。

数据库已经打开。

SQL>

分享到:
评论

相关推荐

    ora-01033 oracle initialization or shutdown in progress

    ### ORA-01033: Oracle 初始化或关闭中 #### 错误概述 ORA-01033 错误通常出现在尝试启动或连接到Oracle数据库时,表明数据库正处于初始化或关闭过程中。该错误可能由多种原因引起,包括但不限于数据库服务尚未...

    Oracle initialization or shutdown in progress 解决方法

    ora-01033: Oracle initialization or shutdown in progress 此外,在 Enterprise Manager Console 中也会出现同样的错误信息。 问题的分析 Oracle Initialization or Shutdown in Progress 问题的产生是由于 ...

    ORACLE initialization or shutdown in process

    解决方法: 进入dos: 以DBA用户登录,具体命令是 sqlplus /NOLOG SQL>connect sys/change_on_install as sysdba 提示:已成功 SQL>shutdown normal 提示:数据库已经关闭 已经卸载数据库 ORACLE 例程已经关闭 ...

    ORA-01033解决.png

    oracle数据库服务报错 【 ORA-01033:ORACLE initialization or shutdown in progress】,网上搜了很多,总结了一个有效的解决方案,亲测有效。

    ora-227101错误解决办法

    下面将详细解析“ORA-27101: shared memory realm does not exist”这一错误及其解决办法,同时提及可能伴随的“ORA-01034: ORACLE not available”和“ORA-01033: ORACLE initialization or shutdown in progress”...

    oracle ORA-01033报错分析和解决方案跟踪文档

    以下是对"ORA-01033: ORACLE initialization or shutdown in progress"错误的详细分析及可能的解决方案。 **错误解释:** ORA-01033错误表示Oracle正在启动或关闭过程中,这可能是由于多种原因导致的,如数据库实例...

    oracle 9i误删除表空间的解决办法(造成ORA-01033.txt

    在Oracle 9i数据库管理过程中,不慎删除表空间可能会导致一系列问题,比如ORA-01033: Oracle 初始化或关闭进行中以及ORA-01110: 数据库未打开等错误。本文将详细探讨这一问题及其解决方案。 #### 错误概述 当出现...

    oracle登录错误

    ### Oracle登录错误(ORA-01033: ORACLE initialization or shutdown in progress) #### 错误概述 在处理Oracle数据库时,可能会遇到ORA-01033错误:“ORA-01033: ORACLE initialization or shutdown in progress”...

    ORACLE出现错误1033和错误ORA-00600的解决方法

    ORA-01033:ORACLE initialization or shutdown in progress 用户: 口令: 这个显然是数据库没有办法启动,但是数据库服务还是可以启动,而程序则无法连接数据库。 首选找问题要看看数据库BDUMP目录下的ALERT文件...

    ORA-01033解决方案(其误删表空间文件导致)

    ORA-01033 错误的具体含义为:“ORACLE initialization or shutdown in progress”,即Oracle正在初始化或关闭过程中。此错误通常由以下几个原因引起: 1. **数据库尚未完全启动或正在关闭**:这是最常见的原因之一...

    Oracle登录错误遭遇ORA

    Oracle数据库在运行过程中可能会遇到各种错误,其中"ORA-01033: oracle initialization or shutdown in progress"是一个常见的登录错误,通常表明数据库正在启动或关闭的过程中,这阻止了用户的正常访问。...

    oracle 字符集的用法

    如果遇到“ORA-01033: ORACLE initialization or shutdown in progress”的错误,这可能是因为系统遇到了异常情况。解决方法包括使用`shutdown abort`停止实例,然后通过SQL*Plus连接到数据库作为SYSDBA用户执行重启...

    oracle 错误一览表

    ### Oracle 错误一览表详解 #### ORA-00001: Unique constraint violated - **描述**:当尝试插入或更新一个行时,违反了唯一性约束。 - **解决方法**:确保数据不违反任何唯一性约束,或者修改约束以适应数据。 #...

    oracle断电处理

    Oracle数据库在运行过程中遭遇突然断电,可能会导致数据文件、控制文件或日志文件的状态不一致,进而引发各种错误,如“ora-01033: oracle initialization or shutdown in progress”。这种错误通常表明数据库正处在...

Global site tag (gtag.js) - Google Analytics