近期使用10G时遇到的两个问题:Memory Notification和ORA-3136
数据库版本是linux as4+10201。
一、Memory Notification
在alert文件经常看到:
Memory Notification: Library Cache Object loaded into SGA
Heap size 3837K exceeds notification threshold (2048K)
这个信息表示oracle为了在SGA中分配3837K的内存。
这个信息产生的原因是:为了分配内存,oracle进程花费了很多时间去寻找空闲内存区。这一般表示内存中的碎片比较多了。
这不是一个bug,你可以不用管这些告警信息。如果你觉得看着不舒服,你可以通过设置10gR2的新隐含参数_kgl_large_heap_warning_threshold来避免。
_kgl_large_heap_warning_threshold参数是以字节为单位的,你可以把它设置大一点减少它告警的可能性,也可以把它设成0来禁止它告警。
如:
alter system set "_kgl_large_heap_warning_threshold"=8388608 scope=spfile ;
10201这个参数默认是2M,10202这个参数的默认值已经改为50M了。
注意:修改这个参数需要重启数据库。
二、ORA-3136
WARNING: inbound connection timed out (ORA-3136)
Thu Mar 29 10:12:05 2007
WARNING: inbound connection timed out (ORA-3136)
Thu Mar 29 10:19:38 2007
WARNING: inbound connection timed out (ORA-3136)
Thu Mar 29 10:21:14 2007
WARNING: inbound connection timed out (ORA-3136)
引发这个错误WARNING可能是因为网络缓慢或者数据库负载太重,导致链接超时。
可以按如下方法解决问题:
1)在listener.ora中添加如下语句:
INBOUND_CONNECT_TIMEOUT_LISTENER =0
2)在sqlnet.ora添加如下语句
SQLNET.INBOUND_CONNECT_TIMEOUT = 0
重启监听
设置的这两个参数的含义是:
SQLNET.INBOUND_CONNECT_TIMEOUT is set to a value in seconds and determines how long a client has to provide the necessary authentication information to a database.
INBOUND_CONNECT_TIMEOUT_listenername is set to a value in seconds and determines how long a client has to complete its connect request to the listener after the network connection has been established.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/231499/viewspace-63817/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/231499/viewspace-63817/