Oracle 11g alert log 新增消息 opiodr aborting process unknown ospid (1951) as a result of ORA-28 说明

本文主要是介绍Oracle 11g alert log 新增消息 opiodr aborting process unknown ospid (1951) as a result of ORA-28 说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

一.Alert log 说明

 

Oracle 11.2.0.2 的数据库中alert log发现大量如下log

 

Fatal NI connect error 12537, connectingto:

 (LOCAL=NO)

 

VERSION INFORMATION:

       TNS for HPUX: Version 11.2.0.2.0 - Production

       Oracle Bequeath NT Protocol Adapter for HPUX: Version 11.2.0.2.0 -Production

       TCP/IP NT Protocol Adapter for HPUX: Version 11.2.0.2.0 - Production

 Time: 11-SEP-2011 17:03:56

 Tracing not turned on.

  Tnserror struct:

  nsmain err code: 12537

   

TNS-12537: TNS:connection closed

   ns secondary err code: 12560

   nt main err code: 0

   nt secondary err code: 0

   nt OS err code: 0

opiodr aborting process unknown ospid (29942) as a result of ORA-609

Sun Sep 11 17:05:23 2011

 

 

Tue Sep 13 17:56:37 2011

opiodr aborting processunknown ospid (924) as a result of ORA-28

Tue Sep 13 17:56:38 2011

opiodr aborting process unknownospid (1951) as a result of ORA-28

Tue Sep 13 17:56:40 2011

opiodr aborting process unknown ospid(1983) as a result of ORA-28

Tue Sep 13 17:56:42 2011

opiodr aborting process unknown ospid(11149) as a result of ORA-28

Tue Sep 13 17:56:43 2011

opiodr aborting process unknown ospid(17662) as a result of ORA-28

Tue Sep 13 17:58:06 2011

 

 

opidcl aborting process unknown ospid(9702) as a result of ORA-604

 

二.问题分析:

 

2.1 opiodr aborting process unknown ospid (924) as a resultof ORA-28

 

在Oracle 11.1.0.6 和 11.1.0.7 的版本中,存在一个bug:6377339。 其会在alert log 显示如下信息:

 

 ORA-28 : opiodr aborting process unknown ospid (21016_3086862016)

 

       这样的提示信息会让我们产生疑惑. 所以在Oracle 11.2 版本中对这个bug进行修复,修复之后的提示信息变成了:

opidcl abortingprocess unknown ospid (32110) as a result of ORA-28

 

opiodr aborting process信息仅仅是一个消息,它是Oracle 11g里新添加的一个消息,用来记录进程的异常退出。

该消息一般用来记录有权限的用户kill session信息。

 

 

示例:

"opiodr aborting process unknown ospid(28342) as a result of ORA-28"

解释:

"unknown" => means it is not abackground or shadow process that is killed
"ospid (28342)" => this is the OS pid of the process which opiodris aborting
"as a result of" => this precedes the error message which is thereason for opiodr to kill the process
"ORA-28" => this is the reason that opiodr killed the process. Inthis case, it is ora-28.

 

 

参考:

"opiodr abortingprocess" Messages in Alert.Log [ID 1230858.1]

Bug 6377339 - Misleading alertlog message for "opiodr aborting" [ID 6377339.8]

 

 

2.2 opiodr aborting process unknown ospid (29942) as a resultof ORA-609

 

这里表示进程ospid (29942) 因为ORA-609的错误而被kill。导致这个错误的原因有2种:

(1) Bug9856585 - "audit network by access does not audit ora-12650"

       该bug 存在Oracle 11.1 到 11.2 的版本中,官网对这个bug的说明如下:

The Bug9856585 is going to be fix bythe Oracle RDBMS Development team, it is currently in Work in Progress Status.

 

(2)在启动 EM Console后报该错误,该问题存在Oracle 10.1到11.2.可能是nscd 进程引起。解决方法是重启这个进程。

 

用超级用户(root)用户执行以下步骤进行重启:

1. Stop nscd daemon:
# service nscd stop 


2. Verify if any rogue processes is still running:

# ps -ef|grep nscd 

If any process is found, kill the roguenscd process

# kill -9 <nscd_pid> 

3. Start nscd daemon:

# service nscd start 

 

4. As the OS user who has installed theAgent, start the Agent:
cd <AGENT_HOME>/bin
emctl start agent 

 

 

参考:

Audit Network Does Not Work When notSuccessful in Oracle 11gR2 [ID 1241325.1]

Grid Control Agent 10.2 Crashes with CoreDump if 'nscd' daemon is Hung on Linux OS [ID 430200.1]

Lsnrctl Status is Failing and Alert.logShows TNS-12537 and ORA-609 [ID 950135.1]

 

 

2.3 opidcl aborting process unknown ospid (9702) asa result of ORA-604

 

根据2.1 中的说明,这里的信息时记录了ospid(9702) 进程因为ORA-604的错误而被中断了。 该消息仅用来记录进程异常退出的信息,是Oracle 11g中新增加的消息。

 

 

 

 

三.小结:

       在Oracle 11g中,新增了一个新的消息机制,会在alert log中记录异常退出的进程。

 

其消息格式示例如下:

"opiodr aborting process unknown ospid(28342) as a result of ORA-28"

解释:

"unknown" => means it is not abackground or shadow process that is killed
"ospid (28342)" => this is the OS pid of the process which opiodris aborting
"as a result of" => this precedes the error message which is thereason for opiodr to kill the process
"ORA-28" => this is the reason that opiodr killed the process. Inthis case, it is ora-28.

 

这个是Oracle 11.2 以后的格式,在11.2 之前的格式:

ORA-28 : opiodr aborting process unknownospid (21016_3086862016)

 

这种格式因为会让人迷惑,因此该格式被称为Bug 6377339,并在11.2中修改了这个格式。

 

Alert log中的"opiodr aborting processunknown ospid (28342) as a result of ORA-28"消息仅仅是一个记录信息。最后的ORA-XX的信息代表导致进程异常退出的原因。

 

 

 

 

 

 

 

 

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

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  http://www.cndba.cn/dave

Weibo: http://weibo.com/tianlesoftware

Twitter: http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware

 

 

-------加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请----

DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群:83829929   DBA5群: 142216823

DBA6 群:158654907    DBA7 群:172855474   DBA总群:104207940

这篇关于Oracle 11g alert log 新增消息 opiodr aborting process unknown ospid (1951) as a result of ORA-28 说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874526

相关文章

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

PLsql Oracle 下载安装图文过程详解

《PLsqlOracle下载安装图文过程详解》PL/SQLDeveloper是一款用于开发Oracle数据库的集成开发环境,可以通过官网下载安装配置,并通过配置tnsnames.ora文件及环境变... 目录一、PL/SQL Developer 简介二、PL/SQL Developer 安装及配置详解1.下

Spring Boot Actuator使用说明

《SpringBootActuator使用说明》SpringBootActuator是一个用于监控和管理SpringBoot应用程序的强大工具,通过引入依赖并配置,可以启用默认的监控接口,... 目录项目里引入下面这个依赖使用场景总结说明:本文介绍Spring Boot Actuator的使用,关于Spri

oracle如何连接登陆SYS账号

《oracle如何连接登陆SYS账号》在Navicat12中连接Oracle11g的SYS用户时,如果设置了新密码但连接失败,可能是因为需要以SYSDBA或SYSOPER角色连接,解决方法是确保在连接... 目录oracle连接登陆NmOtMSYS账号工具问题解决SYS用户总结oracle连接登陆SYS账号

Oracle数据库如何切换登录用户(system和sys)

《Oracle数据库如何切换登录用户(system和sys)》文章介绍了如何使用SQL*Plus工具登录Oracle数据库的system用户,包括打开登录入口、输入用户名和口令、以及切换到sys用户的... 目录打开登录入口登录system用户总结打开登录入口win+R打开运行对话框,输php入:sqlp

解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)

《解读Redis秒杀优化方案(阻塞队列+基于Stream流的消息队列)》该文章介绍了使用Redis的阻塞队列和Stream流的消息队列来优化秒杀系统的方案,通过将秒杀流程拆分为两条流水线,使用Redi... 目录Redis秒杀优化方案(阻塞队列+Stream流的消息队列)什么是消息队列?消费者组的工作方式每

使用C/C++调用libcurl调试消息的方式

《使用C/C++调用libcurl调试消息的方式》在使用C/C++调用libcurl进行HTTP请求时,有时我们需要查看请求的/应答消息的内容(包括请求头和请求体)以方便调试,libcurl提供了多种... 目录1. libcurl 调试工具简介2. 输出请求消息使用 CURLOPT_VERBOSE使用 C

查询Oracle数据库表是否被锁的实现方式

《查询Oracle数据库表是否被锁的实现方式》本文介绍了查询Oracle数据库表是否被锁的方法,包括查询锁表的会话、人员信息,根据object_id查询表名,以及根据会话ID查询和停止本地进程,同时,... 目录查询oracle数据库表是否被锁1、查询锁表的会话、人员等信息2、根据 object_id查询被

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s