`
wh870712
  • 浏览: 39439 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

ORA-27300: ORA-04030: 等错误,这是要命的Oracle bug

阅读更多
ORA-27300: OS 系统相关操作: spcdr:9261:4200 失败, 状态为: 997
要命的Oracle bug ,耗尽内存,导致数据库挂掉
这个问题用Oracle10.2.0.1.0版本安装在32位的Windows系统上,非常常见。随便在google就找到很多。
通常会导致系统耗尽内存,导致Oracle数据库挂掉。
把Oracle数据库重启可以临时解决,但过几天还会发生ORA-04030内存耗尽的情况。最好还是打上补丁。



连接数据库时出现,
ORA-12518: TNS: 监听程序无法分发客户机连接


1、用sysdba连接不是数据库,数据库已经挂了

2、alert_sid.log
Sun Apr 19 10:05:56 2009
Process startup failed, error stack:
Sun Apr 19 10:05:56 2009
Errors in file e:\oracle\product\10.2.0\admin\xboms\bdump\xboms_psp0_3124.trc:
ORA-27300: OS 系统相关操作: spcdr:9261:4200 失败, 状态为: 997
ORA-27301: OS 故障消息: 重叠 I/O 操作在进行中。
ORA-27302: 错误发生在: skgpspawn



由此导致频繁的报下面的错误:
Sun Apr 19 10:24:08 2009
Errors in file e:\oracle\product\10.2.0\admin\xboms\bdump\xboms_arc0_3032.trc:
ORA-04030: 在尝试分配 82444 字节 (pga heap,control file i/o buffer) 时进程内存不足


查看:http://**/viewthread.php?tid=129216
and  http://www.itpub.net/thread-1146317-1-1.html


this is a bug !
oracle承认这是一个bug(10.2.0.2.0之前10g版本),BUG 5607984 - ORACLE DOES NOT CLOSE TCP CONNECTIONS. REMAINS IN CLOSE_WAIT STATE. [On Windows 32-bit].
可打补丁patch number 5639232 ,该补丁有100多MB大。



在操作系统的boot.ini文件中增加'/3G',然后降低SGA。metalink上的解释如下:
ChangesThe '/3GB'  switch was added to the  'boot.ini'  file at the OS level but the errors are eventually encountered when the database is under heavy load. CauseOS resource issue.
The maximum amount of addressable memory by a process ('oracle.exe' for example) running in a
32-Bit Windows environment has been reached.

In a 32-Bit Windows environment, the total addressable memory by a single process is a 4GB. On Windows, the OS reserves half of this memory by default for kernel memory, leaving 2GB of addressable memory for a user process. By placing the '/3GB' switch in the 'boot.ini'  file, this changes the ratio of kernel memory and user memory. When he  '/3GB'  switch is in place, processes (such as 'oracle.exe’) can address 3GB of virtual memory out of the total 4GB of addressable memory. However, once the 3GB of virtual memory is depleted, the process will fail. SolutionTo implement the solution, please execute the following steps:

Tune the application running on the 32-bit environment so that it will not consume greater than 2.7GB of virtual memory when the  '/3GB'  switch is set in the  'boot.ini'  file. In the case of Oracle encountering the OS resource issue, the options are:

1) Reduce the amount of SGA needed to be allocated for the database.
2) Limit the number of dedicated connections to the database and the amount of memory each user process will consume.
3) Change from dedicated connections to multi-threaded server (MTS) connections as MTS only uses a fraction of the amount of memory allocated to each user process when initial connection to the database is established.

See Metalink Note 225349.1 for an in depth discussion regarding memory usage in a 32-bit Windows environment

===========================

ORA-27300 ORA-27301 ORA-27302 in alert log. Cannot connect to database.
  文档 ID:  注释:371074.1 类型:  PROBLEM
  上次修订日期:  30-JAN-2008 状态:  MODERATED

In this Document
  Symptoms
  Changes
  Cause
  Solution
  References



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


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: 8.1.7.4 to 10.2.0.3
Oracle Server - Personal Edition - Version: 8.1.7.4 to 10.2.0.3
Oracle Server - Standard Edition - Version: 8.1.7.4 to 10.2.0.3
Microsoft Windows 2000
Microsoft Windows XP
Microsoft Windows Server 2003


Microsoft Windows (32-bit)
SymptomsNo new connections are allowed to the database.

Database appears to be in a hang state.
Errors:

Mon May 22 14:00:46 2006
Errors in file d:\ecomdb\bdump\ecomdb_psp0_1192.trc:
ORA-27300: OS system dependent operation:spcdr:9261:4200 failed with status: 997
ORA-27301: OS failure message: Overlapped I/O operation is in progress.
ORA-27302: failure occurred at: skgpspawn

written to alert log.


.
Verified the issue by the RDA output provided, which displays errors:

Mon May 22 14:00:46 2006
Errors in file d:\ecomdb\bdump\ecomdb_psp0_1192.trc:
ORA-27300: OS system dependent operation:spcdr:9261:4200 failed with status: 997
ORA-27301: OS failure message: Overlapped I/O operation is in progress.
ORA-27302: failure occurred at: skgpspawn

in the alert log included in RDA output.

ChangesThe '/3GB'  switch was added to the  'boot.ini'  file at the OS level but the errors are eventually encountered when the database is under heavy load. CauseOS resource issue.
The maximum amount of addressable memory by a process ('oracle.exe' for example) running in a
32-Bit Windows environment has been reached.

In a 32-Bit Windows environment, the total addressable memory by a single process is a 4GB. On
Windows, the OS reserves half of this memory by default for kernel memory, leaving 2GB of
addressable memory for a user process. By placing the '/3GB' switch in the 'boot.ini'  file, this
changes the ratio of kernel memory and user memory. When the  '/3GB'  switch is in place, processes (such as 'oracle.exe’) can address 3GB of virtual memory out of the total 4GB of addressable memory. However, once the 3GB of virtual memory is depleted, the process will fail. SolutionTo implement the solution, please execute the following steps:

Tune the application running on the 32-bit environment so that it will not consume greater than
2.7GB of virtual memory when the  '/3GB'  switch is set in the  'boot.ini'  file.
In the case of Oracle encountering the OS resource issue, the options are:

1) Reduce the amount of SGA needed to be allocated for the database.
2) Limit the number of dedicated connections to the database and the amount of memory each user
process will consume.
3) Change from dedicated connections to multi-threaded server (MTS) connections as MTS only
uses a fraction of the amount of memory allocated to each user process when initial connection to
the database is established.


See Metalink Note 225349.1 for an in depth discussion regarding memory usage in a 32-bit Windows environment.

ReferencesNote 225349.1 - Implementing Address Windowing Extensions (AWE) or VLM on Windows Platforms

分享到:
评论

相关推荐

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

    ora-12514:TNS:监听程序当前无法识别连接描述符中请求的服务bug,解决文档.

    ORA-04052p5731178_92080_WINNT.zip

    —————————— 此错误经查证,属于LITTLE ENDIAN->BIG ENDIAN的取值时的dblink bug,且多发在9.2.0.8的oracle版本中(9.2.0.1数据库上正常). 在win 2003平台的查询库打上5731178补丁后,查询库复制正常。

    TNS-12541: TNS: 无监听程序 TNS-12560

    马上登录到服务器里查看监听状态,发现有TNS-12541 ,TNS-12560等错误 Luocs补充:我跟朋友要了错误代码,但他没有保存,就直接贴图。 从计算器的管理 –> 服务选项 –> 检查oracle 监听服务程序,发现该服务...

    如何解决Oracle 常见错误 ORA-04031(PDF)

    Oracle 常见错误 ORA-04031(PDF) 如何解决ORA-04031 错误 文章内容 1.和共享池(shared pool)相关的实例参数 2.诊断ORA-04031 错误 3.解决ORA-04031 错误 • 已知的Oracle BUG • 共享池碎片 o V$SQLAREA 视图 o X$...

    ORACLE数据库逐步解决ORA-12541、ORA-01034和ORA-27101、ORA-00119和ORA00132的过程

    在网上看到一篇文章说另一种可能是oracle目录目录下listener.log日志文件过大(达到4G,据说这是oracle在windows系统下的bug)导致的。 搜索找到listener.log,果然文件已经是4GB。 于是停止服务里面的Oracle监听...

    p17890099_121010_Linux-x86-64.zip ORA-2072 AND ORA-2063 ON QUERY

    12.1.2.0与11.2.0.4通过DB Link查询触发BUG 17890099, ORA-2072 AND ORA-2063 ON QUERY VIA DBLINK

    oracle19.3时区版本33补丁p28852325_193000DBRU_Linux-x86-64.zip

    补丁用于解决ORA-39405 TSTZ版本问题的错误 用于把oracle19.3数据库加TSTZ33版本的补丁 可通过SQL> SELECT * FROM v$timezone_file;命令查询时区版本 Oracle Database 19 Release 19.3.0.0.190416DBRU CORE Patch ...

    oracle19c,19.0.0时区版本35补丁p31335037_190000_Linux-x86-64.zip

    补丁用于解决ORA-39405 TSTZ版本问题的错误 用于把oracle19.0数据库加TSTZ35版本的补丁 可通过SQL> SELECT * FROM v$timezone_file;命令查询时区版本 Oracle Database 19 Release 19.0.0.0.190416DBRU CORE Patch ...

    p21068553_112030_Linux-x86-64.zip

    12658755 ORA-7445 [EOACCESS_IU()+1412] COMPILING JAVA THEN RE-EXECUTING IN SESSION STATE 12916550 ORA-7445 [JOE_RUN_VM] 13023632 12.2:PICK RELEASE ASSERTION FAILURE AT JOEZ.C:2943 HOTLOADED XREF-...

    一个错误修复的运行存储过程。m:官方运行存储过程中有一个错误。 此文件修复了错误。-matlab开发

    查询Oracle数据库的存储过程时,runstoredprocedure存在bug。 错误示例:让 c 成为 Oracle 数据库的连接对象,当您使用字符串输入查询存储过程时,例如: x = runstoredprocedure(c,'myprocinonly',{2500,'Jones'}...

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

    问题描述 Plsql developer执行一段sql报错: 经查alert log详细报错信息为:...复杂视图合并问题导致的oracle bug 解决方法 1、修改隐藏参数: alter system set "_complex_view_merging"=false scope=both; 2、使

    javax.activation.UnsupportedDataTypeException: no object DCH for MIME type

    在Oracle 11.2.0.4中调用 javax.mail 发送邮件时可能会遇到以下错误: ORA-29532: Java call terminated by uncaught Java exception: javax.mail.MessagingException: IOException while sending message; nested ...

    Bug 18411339 Low performance or ORA-1220

    Oracle 11g环境查询gap缓慢,长时间无输出

    oracle详解

    导入/导出是ORACLE幸存的最古老的两个命令行工具,其实我从来不认为Exp/Imp是一种好的备份方式,正确的说法是Exp/Imp只能是一个好的转储工具,特别是在小型数据库的转储,表空间的迁移,表的抽取,检测逻辑和物理...

    关于Oracle中重启数据库的一个bug

    关于drop database在oracle中是致命的操作,这个操作自己在测试环境中体验过,会完全删除数据文件,因此这个操作非常敏感但是实用性不强,不过话说过来,这个操作也不是随便能执行的,除了操作敏感的权限之外,其实...

    Oracle sqldeveloper without jdk (win+linux)

    - Bug # 4918539: ORA-ORA-06502 or ORA-01460 may occurs if a procedure is executed through the Run PL/SQL dialog box and a string with multibyte characters is assigned to one of the parameters. ...

    向Oracle数据库的CLOB属性插入数据报字符串过长错误

    今天在项目中向数据库的CLOB属性插入一段篇文章(1000~2000)字就会报一个字符串过长的错误。 网上说用流来处理,没有这么做。这像是一个Bug,只要把插入的数据,默认扩充到2000以上就ok了。 下面是这段代码: if(...

    oracle 10.2.0.1 精简客户端

    2、本软件安装后,连接oracle服务器时需要手动配置tnsnames.ora,用户可参照tnsnames.ora中的注释部分进行配置。 3、可使用自带的SQL Plus连接Oracle服务器,可以配合PLSQL Developer使用。为减小软件体积,没有对...

    Devart UniDAC v5.3.10 Full Source

    -Bug with tnsnames.ora parsing is fixed -Bug with parsing table names a if sub-query contains a WITH keyword is fixed SQLServer data provider -Bug with opening a query with too long columns is fixed ...

    Oracle11g升级到11.2.0.4案例

    Oracle11g11.2.0.1存在一些bug,如会引起ORA-03113的客户端异常。而oracle最新release11.2.0.4已经解决了这些bug,所以很多公司会遇到升级问题,本文图文并茂,详细介绍升级过程,希望能够帮助大家少走弯路。请注意...

Global site tag (gtag.js) - Google Analytics