本文章介绍了关于oracle ora-01172,01151故障处理详细教程,有需要的同学可以参考一下关于01151故障处理方法吧。
本文章介绍了关于oracle ora-01172,01151故障处理详细教程,有需要的同学可以参考一下关于01151故障处理方法吧。
客户机windows蓝屏了,然后客户在电脑一顿乱删,真寒。
oracle不能启动,报ora-01172,01151错误。
处理过程:
代码如下 |
复制代码 |
Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.
C:Documents and SettingsAdministrator>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:oracleproduct10.2.0db_1networkadminsqlnet.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 SettingsAdministrator>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 SettingsAdministrator>
C:Documents and SettingsAdministrator>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 SettingsAdministrator>
C:Documents and SettingsAdministrator>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 SettingsAdministrator>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:oracleproduct10.2.0db_1networkadminlistener.ora
写入E:oracleproduct10.2.0db_1networkloglistener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1ipc)))
监听: (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:oracleproduct10.2.0db_1networkadminlistener.o
ra
监听程序日志文件 E:oracleproduct10.2.0db_1networkloglistener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.pipeEXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mqdyj)(PORT=1521)))
服务摘要..
服务 "dbtest" 包含 1 个例程。
例程 "dbtest", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
C:Documents and SettingsAdministrator>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:oracleproduct10.2.0db_1networkadminsqlnet.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>