您的位置:首页 > 大数据 > 人工智能

ORA-27300: OS system dependent operation:spcdr:9261:4200 failed with status: 997

2015-12-24 15:10 751 查看
客户一oracle这俩天莫名其妙连接不上,让我分析下原因,查看alert日志发现报了好多如下错误:

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

在metalink上找了下,发现如下文档:

ORA-27300 ORA-27301 ORA-27302 in alert log. Cannot connect to database. (Doc ID 371074.1)

对于这个问题,文章中认为导致原因是:

This is OS 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.

意思便是对于32位的windows操作系统而言,单个进程占用内存最大为4g,同时要给操作系统内核保留2g,也就是oracle进程能使用的内存大小不应该超过2g那样。。。

给的解决方案如下:

To 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 the following:

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.

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

因为我查看oracle sga大小也就1400m,感觉没有必要调整sga的大小。。

于是我将虚拟内存的设置大小改了下,由原来的2g-4g,改为固定的2g大小。。

同时发现该oracle redo切换过快,redo日志大小为50M,调整大小为2g。

暂时未出现之前的故障情况,有待观察处理。

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

另外啰嗦几句,这一个多月破事多的一腿,无心工作与学习,而今又将近年尾,更是归心似箭。

同时又面临着一些现实的问题,挫败感浓郁不散,无心他事。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: