ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ora-01172,01151故障处理

ora-01172,01151故障处理

原创 Linux操作系统 作者:arthurtangel 时间:2011-12-14 17:32:09 0 删除 编辑
客户机windows蓝屏了,然后客户在电脑一顿乱删,真寒。

oracle不能启动,报ora-01172,01151错误。

处理过程:

Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.

C:\Documents and Settings\Administrator>tnsping dbtest

TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-12月-
2011 16:34:10

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

已使用的参数文件:
E:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora


已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = mqdyj)(P
ORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = dbtest)))
OK (10 毫秒)

C:\Documents and Settings\Administrator>sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 12月 14 16:34:34 2011

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

ERROR:
ORA-12560: TNS: 协议适配器错误

--这里是因为 service.msc里面的服务没有启动。启动就OK了。



C:\Documents and Settings\Administrator>
C:\Documents and Settings\Administrator>sqlplus /@dbtest as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 12月 14 16:34:46 2011

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

ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务


请输入用户名:  exit
输入口令:
ERROR:
ORA-12560: TNS: 协议适配器错误


--错误原因同上。这里是因为 service.msc里面的服务没有启动。启动就OK了。

--这里我修改了一下listener.ora,把其注册成了静态监听。
就是添加 sid_desc那一款,添加好了就会有二个SID_DESC。

C:\Documents and Settings\Administrator>
C:\Documents and Settings\Administrator>lsnrctl stop

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-12月-2011 16:3
6:59

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
命令执行成功

C:\Documents and Settings\Administrator>lsnrctl start

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-12月-2011 16:3
7:06

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

启动tnslsnr: 请稍候...

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production
系统参数文件为E:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入E:\oracle\product\10.2.0\db_1\network\log\listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mqdyj)(PORT=1521)))

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期                  14-12月-2011 16:37:11
正常运行时间              0 天 0 小时 0 分 5 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          E:\oracle\product\10.2.0\db_1\network\admin\listener.o
ra
监听程序日志文件          E:\oracle\product\10.2.0\db_1\network\log\listener.log

监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mqdyj)(PORT=1521)))
服务摘要..
服务 "dbtest" 包含 1 个例程。
  例程 "dbtest", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "PLSExtProc" 包含 1 个例程。
  例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功

C:\Documents and Settings\Administrator>tnsping dbtest

TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 14-12月-
2011 16:37:17

Copyright (c) 1997, 2005, Oracle.  All rights reserved.

已使用的参数文件:
E:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora



SQL> conn oracle/iamdba
ERROR:
ORA-01033: ORACLE initialization or shutdown in progress

--我连数据库的时候报这个错。



SQL> shutdown immediate
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。

SQL>startup
ERROR 位于第 1 行:
ORA-01172: 线程1的恢复停止在块253011(在文件2中)
ORA-01151: 如果需要,请使用媒体恢复以恢复块和恢复备份

--启动数据库时报:  ora-01172,01151,UNDO文件出错。
出现这个错误的诱因是windows蓝屏了。
解决办法(在操作之前最好先备份一下oracle的各种文件):



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

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             159386500 bytes
Database Buffers          444596224 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
SQL> recover datafile 2;
完成介质恢复。
SQL> alter database open;

数据库已更改。

SQL>

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

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

注册时间:2011-05-01

  • 博文量
    81
  • 访问量
    216839