`
wh870712
  • 浏览: 40337 次
  • 性别: 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-04052p5731178_92080_WINNT.zip

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

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

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

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

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

    ORACLE DBMS STATS ERROR

    1. BUG:399 - 这可能是一个特定的错误编号,通常指向Oracle数据库中的一个已知问题。 2. NOTE:166650.1 - 工作效率与Oracle支持 - 最佳实践 - 提供与Oracle支持部门有效协作的指南和最佳实践。 3. NOTE:1310365.1 - ...

    oracle ora-03113错误

    ### Oracle ORA-03113 错误解析及解决方法 #### 一、ORA-03113 错误概述 ORA-03113 是一个较为常见的Oracle错误,通常出现在网络通信出现问题时,具体表现为“end-of-file on communication channel”(通信通道上...

    oracle数据库中ora-报错原因及处理

    在Oracle数据库的日常管理和运维中,我们经常遇到各种"ORA-"开头的错误代码,这些错误代码是Oracle系统用来标识特定问题的。Oracle数据库是全球广泛使用的数据库管理系统,它提供了复杂的数据存储、处理和管理功能。...

    p8922013_10204_Linux-x86-64.zipORA-00600: INTERNAL ERROR CODE, ARGUMENTS: [17059

    ORA-00600错误通常涉及到数据库的内部一致性问题,这可能是由于软件bug、硬件故障、数据损坏或者不兼容的更新导致的。其中,17059是特定的错误子类型,而0X93953434可能是一个内存地址或者内部状态值,用于帮助诊断...

    Oracle错误一览表

    这类错误通常与软件bug有关,可能需要联系Oracle支持服务进行解决。 #### ORA-00024: Mode 2 rollback segment not found 在模式2回滚段丢失的情况下,尝试执行事务时会抛出此错误。这通常发生在数据文件丢失或...

    启动oracle数据库报错:ORA-00600

    这个错误是由于多种原因引起的,包括数据文件损坏、控制文件问题、实例恢复不完整或者软件bug等。在描述中提到的情况,错误可能是在RMAN(恢复管理器)执行恢复操作后出现的。 RMAN是Oracle数据库的一个强大工具,...

    ORA-12560解決方法

    ORA-12560 是一个常见的 Oracle 数据库错误代码,通常在尝试连接到 Oracle 实例时出现。该错误提示可能出现在使用 Oracle 的不同版本(如 Oracle Enterprise Edition 8.1.7)以及不同的操作系统环境(如 Windows ...

    oracle报错(ORA-00600)问题处理

    Oracle数据库在运行过程中可能会遇到各种错误,其中ORA-00600是一个内部错误代码,表示遇到了数据库系统内部无法处理的异常情况。这个错误通常与数据库的底层结构或数据不一致有关,它不是一个通用错误,而是针对...

    oracle断电导致控制文件不一致报错ORA-00214处理

    ### Oracle 断电导致控制文件不一致报错 ORA-00214 处理方法 #### 问题概述 在Oracle数据库管理过程中,遇到控制文件版本不一致的问题时,通常会收到ORA-00214错误提示。此错误表示数据库中的一个或多个控制文件与...

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

    ### 如何解决Oracle常见错误 ORA-04031 #### 一、与共享池相关的实例参数 在深入探讨如何解决ORA-04031错误之前,我们需要先了解几个与共享池(`shared pool`)密切相关的Oracle实例参数: 1. **`SHARED_POOL_SIZE`...

    ORA错误分析及解决

    接下来,我们来看ORA-07445错误,这是一个内核错误,通常涉及到Oracle的内部错误或者模块崩溃。这可能是由于内存泄漏、不兼容的硬件驱动、库问题或者是Oracle代码中的bug引起的。处理这个错误的方法包括: 1. 查看...

    ORA-04031故障分析处理

    - 在某些版本的Oracle中,如9.2.0.7, 10.1.0.4和10.2.x,可能存在LAST_FAILURE_SIZE显示错误的问题,这可能是bug 3669074,确保数据库版本已修复这个问题。 解决ORA-04031错误通常涉及调整参数,优化内存分配策略,...

    关于CRA-00600:内部代码错误解决

    关于CRA-00600:内部代码错误解决,这一主题主要聚焦于Oracle数据库中一个常见的技术难题——ORA-00600错误的识别与处理。ORA-00600是一种内部错误,通常指向Oracle数据库内核中的某种异常情况,其参数列表如[19004]...

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

    2. 监听日志文件问题:如果监听日志文件listener.log过大(例如达到4GB),这可能造成Oracle在Windows系统下的bug,导致ORA-12541错误。解决方法是停止监听服务,备份listener.log文件(例如重命名为listener.log....

    ORA-07445 [opiaba()+639] ORA-00600 17147 补丁包

    ORA-07445: exception encountered: core dump [opiaba()+639] [SIGSEGV] [ADDR:0x0] [PC:0x184CD17] [SI_KERNEL(general_protection)] [] ORA-00600: internal error code, arguments: [17147], [0x0641B8FE0], [],...

    instantclient-odbc-windows.x64-18.3.0.0.0dbru

    在"压缩包子文件的文件名称列表"中,只提到了"instantclient_18_3",这通常会包含一系列的动态链接库(DLLs)、头文件和可能的示例代码,如oci.dll、sqlplus.exe等,这些文件对于设置ODBC数据源和运行依赖于Oracle的...

Global site tag (gtag.js) - Google Analytics