ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 出了ORA-27101: shared memory realm does not exist 错误的处理

出了ORA-27101: shared memory realm does not exist 错误的处理

原创 Linux操作系统 作者:coolhe 时间:2010-07-27 20:22:20 0 删除 编辑
今天一个客户数据库遇到了ora-27101错误,经过自己的查看alter.log确实是因为一个current redolog坏了引起的错误。这个问题原来我也遇到过,今天按照下面的过程进行解决,侥幸成功了!!留下日志以享后者;;
-----------
win2003,4G,oracle9i,错误:ora-271010,查询原因是redolog损坏,解决如下:
注意:执行recover database until cancel;操作N次,又重新启动oracle9i数据库n次,最后成功。成功的时候,是查询select status from v$instance,发现实例是open状态,有查询了下数据库表,能看到数据,才知道成功了。然后迅速exp进行备份。
-----------

Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-2000 Microsoft Corp.

C:Documents and SettingsAdministrator>sqlplus /nolog

SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 3月 19 10:41:29

2009

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conm /as sysdba
SP2-0734: 未知的命令开头 "conm /as s..." - 忽略了剩余的行。
SQL> conn /as sysdba
已连接。
SQL> startup mount;
ORA-01081: 无法启动已在运行的 ORACLE --- 请首先关闭
SQL> shutdown immediate;
ORA-01109: 数据库未打开


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

Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。
SQL> recover database
ORA-00283: 恢复会话因错误而取消
ORA-00399: 重做日志中的更改说明已损坏
ORA-00353: 日志损坏接近块 55 更改 293648617 时间 03/18/2009 17:02:38
ORA-00312: 联机日志 3 线程 1: 'D:ORACLEORADATAERPREDO03.LOG'


SQL> alter database clear logfile group 3;
alter database clear logfile group 3
*
ERROR 位于第 1 行:
ORA-01624: 线程3的紧急恢复需要日志1
ORA-00312: 联机日志 3 线程 1: 'D:ORACLEORADATAERPREDO03.LOG'


SQL> select GROUP#,SEQUENCE#, ARCHIVED,STATUS from v$log;

GROUP# SEQUENCE# ARC STATUS
---------- ---------- --- ----------------
1 134 NO INACTIVE
2 135 NO INACTIVE
3 136 NO CURRENT

SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile

;

系统已更改。

SQL> alter system set "_allow_terminal_recovery_corruption"=true

scope=spfile ;

系统已更改。

SQL> shutdown abort;
ORACLE 例程已经关闭。
SQL> startup nomount;
ORACLE 例程已经启动。

Total System Global Area 135338868 bytes
Fixed Size 453492 bytes
Variable Size 109051904 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
SQL> > select ksppinm,ksppdesc
SP2-0734: 未知的命令开头 "> select k..." - 忽略了剩余的行。
SQL> 2 from x$ksppi
SQL> 3 where ksppinm like '_allow%' escape ''
SQL> 4 ;
SP2-0226: 无效的行号
SQL> select ksppinm,ksppdesc
2 from x$ksppi
3 where ksppinm like '_allow%' escape '' ;
where ksppinm like '_allow%' escape ''
*
ERROR 位于第 3 行:
ORA-01425: ????????? 1 ????


SQL> alter database open;
alter database open
*
ERROR 位于第 1 行:
ORA-01507: ??????


SQL> shutdown abort
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-00399: 重做日志中的更改说明已损坏
ORA-00353: 日志损坏接近块 55 更改 293648617 时间 03/18/2009 17:02:38
ORA-00312: 联机日志 3 线程 1: 'D:ORACLEORADATAERPREDO03.LOG'


SQL> recover database until cancel;
ORA-00279: 更改 293648564 (在 03/18/2009 17:02:29 生成) 对于线程 1 是

必需的
ORA-00289: 建议: D:ORACLEORA92RDBMSARC00136.001
ORA-00280: 更改 293648564 对于线程 1 是按序列 # 136 进行的


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

ORA-00308: 无法打开存档日志 'D:ORACLEORA92RDBMSARC00136.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'D:ORACLEORADATAERPSYSTEM01.DBF'


SQL> recover database until cancel;
ORA-00279: 更改 293648564 (在 03/18/2009 17:02:29 生成) 对于线程 1 是

必需的
ORA-00289: 建议: D:ORACLEORA92RDBMSARC00136.001
ORA-00280: 更改 293648564 对于线程 1 是按序列 # 136 进行的


指定日志: {=suggested | filename | AUTO | CANCEL}
auto
ORA-00308: 无法打开存档日志 'D:ORACLEORA92RDBMSARC00136.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


ORA-00308: 无法打开存档日志 'D:ORACLEORA92RDBMSARC00136.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'D:ORACLEORADATAERPSYSTEM01.DBF'


SQL> auto
SP2-0042: 未知命令"auto" -- 其余行忽略。
SQL> recover database until cancel;
ORA-00279: 更改 293648564 (在 03/18/2009 17:02:29 生成) 对于线程 1 是

必需的
ORA-00289: 建议: D:ORACLEORA92RDBMSARC00136.001
ORA-00280: 更改 293648564 对于线程 1 是按序列 # 136 进行的


指定日志: {=suggested | filename | AUTO | CANCEL}
auto
ORA-00308: 无法打开存档日志 'D:ORACLEORA92RDBMSARC00136.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


ORA-00308: 无法打开存档日志 'D:ORACLEORA92RDBMSARC00136.001'
ORA-27041: 无法打开文件
OSD-04002: 无法打开文件
O/S-Error: (OS 2) 系统找不到指定的文件。


ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 将出现如下错误
ORA-01194: 文件1需要更多的恢复来保持一致性
ORA-01110: 数据文件 1: 'D:ORACLEORADATAERPSYSTEM01.DBF'


SQL> alter database open resetlogs;

数据库已更改。

SQL>

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3090/viewspace-669640/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-04-14

  • 博文量
    118
  • 访问量
    614247