ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORA-27050 ORA-27077问题的处理

ORA-27050 ORA-27077问题的处理

原创 Linux操作系统 作者:尛样儿 时间:2013-04-22 09:53:58 0 删除 编辑

        客户的数据库是Oracle RAC Database 10.2.0.3 for Linux x86_64bit,其中一个实例的告警日志收到大量类似如下的告警日志:
ORA-07445: exception encountered: core dump [opidsa()+386] 
Errors in file /orahome/oracle/admin/PHAM/bdump/pham2_diag_13962.trc: 
ORA-27050: function called with invalid FIB/IOV structure 
Additional information: 2 
ORA-27077: too many files open 

METALINK有文章详细说明了问题的原因:

ORA-07445 opidsa() Followed By ORA-27050 And ORA-27077 [ID 788498.1]
修改时间:2012-1-31类型:PROBLEM状态:MODERATED优先级:3

In this Document
  Symptoms
  Cause
  Solution




This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.



Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 10.2.0.5 - Release: 10.2 to 10.2
Information in this document applies to any platform.

Symptoms

***Checked for relevance on 03-NOV-2010*** 

On 10.2.0.3, attempting to execute an SQL statement, the following errors are generated in both the alert.log and trace files: 

ORA-07445: exception encountered: core dump [opidsa()+386] 
Errors in file /orahome/oracle/admin/PHAM/bdump/pham2_diag_13962.trc: 
ORA-27050: function called with invalid FIB/IOV structure 
Additional information: 2 
ORA-27077: too many files open 

Stack is similar to:

ksedst <- ksedmp <- ssexhd <- funlockfile <- opidsa 
<- kpodny <- opikpr <- opiodr <- rpidrus <- skgmstack 
<- rpidru <- rpiswu2 <- kprball <- kkxsdescinit <- pevm_icd_call_commo 
<- pfrinstr_ICAL <- pfrrun_no_tool <- pfrrun <- plsql_run <- pricar 

Cause

This is caused by a lack of OS configuration where ORA-07445 [opidsa()+386] is a result of ORA-27077, which is caused by a low number of files (descriptors). 

Solution

- Run the HCVE script. or the RDA and check if the value of nofiles parameter is set as recommended by Oracle for 10.2 releases.

Increase the ulimit(NOFILES) for the Oracle user to a minimum of 4096.


根据文章提示查看oracle用户的限制值:



上面的显示open files的值是1024,根据提示修改/etc/security/limits.conf的值:
oracle soft nofile 4096
oracle hard nofile 65536
        修改后,将数据库实例重新启动,报错即消失。

--end--

2.jpg

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

请登录后发表评论 登录
全部评论
Oracle数据库管理员,Oracle数据库系统构架员;2012年7月出版《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》一书;Oracle 10g OCM。

注册时间:2010-01-05

  • 博文量
    483
  • 访问量
    5651513