我的Oracle版本是10.2.1,所说是个BUG比较多的版本。事实证明真的是这样。网上也有很多人这样说。
这几天数据大量地出现错误,信息系统的错误提示为:无法从套接字读取更多内容,查看Oracle的警告日志,错误信息为:“RA-07445: 出现异常错误: 核心转储 [ACCESS_VIOLATION] [_qkabxo+18] [PC:0x20C6606] [ADDR:0x0] [UNABLE_TO_READ] []”。
udump目录中出现大量TRACE文件。
查看了错误提示的对应的TRACE文件,发现一句关键的话:Heap size 2267K exceeds notification threshold (2048K)
去网上一查,找到了对应的解决方案。
文章内容转帖一下,以备忘记。
转自:http://www.linuxidc.com/Linux/2011-12/49914.htm
具体内容如下:
NOTE: The default threshold in 10.2.0.1 is 2M. So these messages could show up frequently in some application environments
In 10.2.0.2, the threshold was increased to 50MB after regression tests, so this should be a reasonable and recommended value. If you continue to see the these warning messages in the alert log after applying 10.2.0.2 or higher, an SR may be in order to investigate if you are encountering a bug in the Shared Pool.
实用下面语句修改该参数的值为上面建议的50M:
SQL> alter system set "_kgl_large_heap_warning_threshold"=52428800 scope=spfile ;(这个值是以字节为单位的)
SQL> shutdown immediate
SQL> startup open
其他:
oracle的隐含参数(以_开头的参数),无法直接通过 show parameter来查看,可以通过X$KSPPI和X$KSPPCV视图来查看(sys用户)。
可以使用下面语句来查看相关信息:
SQL> select ki.KSPPINM NAME, kv.KSPPSTVL VALUE, kv.KSPPSTDVL DISPLAY_VALUE
from X$KSPPI ki, X$KSPPCV kv
where ki.indx = kv.indx
and ki.KSPPINM like '%&v_parameter%';
分享到:
相关推荐
### Oracle:“Heap size 3597K exceeds notification threshold” 解决方案 #### 背景与问题描述 在Oracle数据库环境中,可能会遇到一条警告信息:“Heap size 3597K exceeds notification threshold”。这条消息...
在JVM GC原理和heapsize调优的学习和实践过程中,需要理解多个关键概念和操作步骤,下面详细展开: 1. 垃圾回收机制的理解 在Java中,当对象不再被引用时,它们应该被垃圾回收器回收。GC机制基于几个关键概念工作,...
private int heapSize; public MyMaxHeap(int limit) { heap = new int[limit]; this.limit = limit; heapSize = 0; } public boolean isEmpty() { return heapSize == 0; } public ...
**问题描述**:Oracle数据库的`alter.log`文件中出现`Heapsize 3392K exceeds notification threshold (2048K)`的警告信息。 **解决方案**: 1. 修改Oracle数据库中的隐含参数: ``` SQL> alter system set "_...
heapdump分析工具------HeapAnalyzer: 2014年1月最新发布 用法: 在命令行执行 java -Xmx500m -jar ha453.jar
当遇到应用程序运行缓慢,频繁出现Full GC,甚至出现OutOfMemoryError等问题时,我们通常需要对堆内存进行深入分析,这就是heapdump工具的作用所在。heapdump工具可以帮助开发者诊断Java应用的内存泄漏、过度对象...
IBM的HeapAnalyzer是一款强大的内存分析工具,主要用于诊断Java应用程序中的内存泄漏问题。它能帮助开发者深入理解Java虚拟机(JVM)的堆内存状态,通过分析heap dump文件,找出那些占用内存过大的对象,以及这些...
【标题】:heapdump-tool工具 【正文】: 在IT领域,内存管理是优化系统性能的关键环节,尤其是在Java应用程序中。Heapdump-tool工具是专为Java开发者设计的,用于生成和分析堆转储(Heap Dump)文件的强大工具。...
heap Analyzer heapdump分析工具
(实际起限制作用的是tmp_table_size和max_heap_table_size的最小值。)如果内存临时表超出了限制,MySQL就会自动地把它转化为基于磁盘的MyISAM表,存储在指定的tmpdir目录下,默认: mysql> show variables like ...
heapdump分析工作heapanalyzer的使用及工具 java -Xmx1000m -jar ha443.jar
IBM Heap Analyzer是一款强大的内存分析工具,主要用于Java应用程序的性能优化,特别是针对IBM J9 JVM的内存管理和垃圾收集进行深入分析。这款工具可以帮助开发者诊断和解决内存泄漏、过度对象分配以及垃圾收集效率...
这个值可以通过命令行参数`-Xmx`或配置项`dalvik.vm.heapsize`来指定。例如,在一些定制版系统中,如MIUI,这个值可能会被设置为64MB,而默认情况下,该值通常是32MB。 ##### 3. 堆内存位图 为了更有效地管理堆...
- heap_3使用标准C库的malloc()和free()函数,因此不受到configTOTAL_HEAP_SIZE配置的影响。 - heap_4是heap_2的扩展版本,它加入了coalescences功能,可以将临近的小的空闲内存块合并成大的内存块,以减少内存碎片...
本文将深入探讨如何在Rust程序中测量堆分配,以及如何使用提供的"heapsize"库来实现这一目标。 堆是计算机内存的一个区域,用于动态分配大块内存。在Rust中,虽然栈内存管理相对简单且高效,但处理大型数据结构或不...
HeapAnalyzer是一款强大的工具,专为分析Java应用程序的内存状况,特别是针对内存溢出问题进行诊断。本文将详细介绍HeapAnalyzer的使用、功能以及如何通过它来排查和解决Java OOM问题。 一、HeapAnalyzer简介 Heap...
i < n && heap->size < k; i++) { if (is_greater(arr[i], heap->root->value)) { heap->root->value = arr[i]; sift_down(heap, 0); } } // 打印堆顶的k个元素 while (heap->size > 0) { printf("%d ", ...
"Heap Dump的IBM分析工具.zip" 提供了一个专门用于解析和分析heap dump的IBM工具,帮助我们更好地理解JVM内存的状态。 Heap dump文件是Java虚拟机(JVM)在特定时间点生成的一种文件,它包含了JVM堆内存中的所有...