oracle ora-01172,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>

 

时间: 2024-08-07 14:47:03

oracle ora-01172,01151故障处理详细教程的相关文章

[Oracle] Data Guard CPU/PSU补丁安装详细教程

以下是对Data Guard CPU/PSU补丁安装的方法进行了详细的分析介绍,需要的朋友可以参考下   非Data Guard的补丁安装教程可参考<[Oracle] CPU/PSU补丁安装详细教程>,Data Guard需要Primary和Standby同时打上补丁,所以步骤更复杂一些,其主要步骤如下: 1.在Primary停止日志传输服务: 2.关闭Standby数据库,在Standby的软件上打补丁(注意:不需要为Standby数据库打补丁),启动standby为mount状态,不启用m

[Oracle] Data Guard CPU/PSU补丁安装详细教程_oracle

非Data Guard的补丁安装教程可参考<[Oracle] CPU/PSU补丁安装详细教程>,Data Guard需要Primary和Standby同时打上补丁,所以步骤更复杂一些,其主要步骤如下:1.在Primary停止日志传输服务:2.关闭Standby数据库,在Standby的软件上打补丁(注意:不需要为Standby数据库打补丁),启动standby为mount状态,不启用managed recovery:3.关闭Primary,在Primary的软件和数据库本身都打上补丁:4.启动

sysbench对mysql压力测试的详细教程_Mysql

前言 在对网站整体性能进行benchmark时,可以使用多种工具,比如大名鼎鼎的ab(Apache bench),http_load等工具.这里我们不关注他们的使用,如果你想了解,可以自行在网上找到答案. 重点来说MySQL的基准测试如何进行,也有很多种工具来供我们选择,比如mysqlslap.sysbench.Super Smack等,其中mysqlslap的使用MySQL官网给出了介绍,Super Smack是服务器压力测试强有力的工具,那么sysbench便是我们进行MySQL基准测试的很

使用sysbench来测试MySQL性能的详细教程_Mysql

sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况. 目前sysbench代码托管在launchpad上,项目地址:https://launchpad.net/sysbench(原来的官网 http://sysbench.sourceforge.net 已经不可用),源码采用bazaar管理. 一. 下载源码包安装epel包后以便安装bzr客户端: rpm -Uvh http://dl.fedoraproject.org/pub/epe

mysql 5.7.14 下载安装、配置与使用详细教程_Mysql

 下载 a.我这里用的是 ZIP Archive版的,win8 64位的机器都支持 这个所以我建议都用这个.还有这个比较简单而且还很干净.地址见图.拖到最下面,看清楚了64bit ZIP Archive,点击Download. b.点开之后会进入另一个页面,但却没有下载,这个时候不用怕,看不懂也没关系,他的意思就是让你登录(login),或者注册个账号(sign up)就行了,登录或者注册成功后就开始下载了.(记住密码要字母和数字组合,并且要大小写混合) c.当然如果你有的话也可以直接登录. 成

在Ruby程序中连接数据库的详细教程_ruby专题

本章节将向您讲解如何使用 Ruby 访问数据库.Ruby DBI 模块为 Ruby 脚本提供了类似于 Perl DBI 模块的独立于数据库的接口. DBI 即 Database independent interface,代表了 Ruby 独立于数据库的接口.DBI 在 Ruby 代码与底层数据库之间提供了一个抽象层,允许您简单地实现数据库切换.它定义了一系列方法.变量和规范,提供了一个独立于数据库的一致的数据库接口. DBI 可与下列进行交互:     ADO (ActiveX Data Ob

Oracle ORA 07445 evaopn2()+128错误问题的解决方案_oracle

问题描述 Plsql developer执行一段sql报错: 经查alert log详细报错信息为: ORA-07445: exception encountered: core dump [evaopn2()+128] [SIGSEGV] [Address not mapped to object] [0x000000000] [] [] 数据库版本 10.2.0.4.0 问题原因 复杂视图合并问题导致的oracle bug 解决方法 1.修改隐藏参数: alter system set "_

MySQL5.6.22 绿色版 安装详细教程(图解)_Mysql

1.数据库下载 从官方网站可以找到两种文件包,一种是exe安装程序,另一种是zip压缩包. 本人喜欢清爽的方式,所以下载的是ZIP压缩包.最新的5.6.22大概350M,下载还需要oracle帐号,自己注册一个好了. 2.数据库安装 解压出下载的文件mysql-5.6.22-win32.zip(有x86和x64两个版本)到任一目录,防止出现未知问题,最好放在非系统盘的非中文目录下,我的位置E:\mysql\mysql-5.6.24-win32.打开文件夹复制一份my-default.ini为my

Oracle RAC中Srvctl命令详细说明

Oracle RAC中srvctl命令详细说明(转) SRVCTL Add 添加数据库或实例的配置信息.在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME 和 ORACLE_SID参数匹配. srvctl add database -d database_name [-m domain_name] -o oracle_home [-s spfile] srvctl add instance -d database_name -i instance_name -n node_nam