ORA-00600: internal error code, arguments: [KGL-heap-size-exceeded]
背景
某项目alert日志中偶然报错如下:
ORA-00600: internal error code, arguments: [KGL-heap-size-exceeded]
报错的过程中业务变慢,业务处理tps几乎为0,且大量产生cdmp core文件导致/oracle目录爆满
一会业务恢复正常,但是高峰期又反复出现类似问题
问题排查:
检查故障时间点的awr,发现shared pool相关的等待很严重,怀疑故障时刻shared pool的占用很大
且KGL占用9G+
发现报错的sqlsql version count数达到了900+(_cursor_obsolete_threshold设为1024),查看version count高的原因
select c.sql_id,
c.SQL_TYPE_MISMATCH,
c.BIND_EQUIV_FAILURE,
b.POSITION,
b.DATATYPE_STRING,
b.LAST_CAPTURED
from V$SQL_BIND_CAPTURE b, v$sql_shared_cursor c
where c.CHILD_ADDRESS = b.CHILD_ADDRESS
and c.SQL_ID = '9pvt6prqzddvy';
发现BIND_EQUIV_FAILURE为Y,导致cursor无法共享
首先这个环境的sga为128G,shared_pool设置了20G,的确有点小了,Shared Pool Statistics占用已达到90%左右,将shared_pool调整到40g,故障不再出现,但是上面的sql的version count仍旧很高,尝试将_cursor_obsolete_threshold减少到50(之前害怕硬解析增高没有调小),version count问题得到缓解。
后来查询mos,发现BIND_EQUIV_FAILURE 可能是12.2的bug(2610645.1),解决方案:
打上 Patch 28794230
使用如下的workaround:
alter system set "_optimizer_use_feedback"=false scope=spfile;
alter system set "_optimizer_adaptive_cursor_sharing"=false scope=spfile;
alter system set "_optimizer_extended_cursor_sharing_rel"=none scope=spfile;
alter system set "_optimizer_use_feedback"=false;
alter system set "_optimizer_adaptive_cursor_sharing"=false;
alter system set "_optimizer_extended_cursor_sharing_rel"=none;
由于故障不再出现,没有参考上面的解决方法
ORA-00600: internal error code, arguments: [KGL-heap-size-exceeded]相关推荐
- oracle ora 13011,ORA-00600: internal error code, arguments: [13011]
近期,一客户历史数据库屡次遇到ORA-00600: internal error code, arguments: [13011].附带的,还有ORA-01499 SQL> analyze ta ...
- Oracle 10g Toad查看 表空间 报错 ORA-00600 internal error code arguments [ktfbhget-4], [6], [5]...
Toad 10.6 去查Oracle 10g 的表空间,在Toad 返回页面提示信息是: selectprivileges on following are required:DBA_DATA_FIL ...
- ORACLE 启动报错 ORA-00600: internal error code, arguments
虚拟机突然关闭后,启动数据库,报错: ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr], [1], [44], ...
- 使用DBLINK查询时报ORA-00600: internal error code, arguments: [kzdlk_zt2 err]
使用DBLINK查询时报ORA-00600: internal error code, arguments: [kzdlk_zt2 err] SYS@oradg11g > select INS ...
- internal error code, arguments: [13013], [5001], [8943】
记录另一起ORA-00600[13013]处理 发现ORA-00600[13013]错误 During the execution of an UPDATE statement, after seve ...
- oracle在服务器断电重启后启动报错ORA-00600: internal error code, arguments: [kcm_headroom_warn_1], []
一.错误场景介绍. 数据库:11.2.0.4(单实例,没有任何备份) 系统:Centos 6.5(虚拟机) 由于机房断电导致oracle数据库(单实例)所在服务器的虚拟服务器出现问题,在经过恢复后虚拟 ...
- 删除数据报ORA-00600: internal error code, arguments: [ktbesc_plugged]
Oracle在删除数据是以下错误: ORA-00600: internal error code, arguments: [ktbesc_plugged], [], [], [], [], [], [ ...
- ORA-00600: internal error code, arguments: [kgl-no-mutex-held]
一.环境windowsoracle 11.2.0.4 RAC 二.问题现象1.连接数据库后,无法查询2.报错信息:ORA-00600: internal error code, arguments: ...
- 解决ORA-00600: internal error code, arguments: [kcratr_nab_less_than_odr]错误
机房环境: OS:windows 2008 数据库版本:oracle 11g 事件起因: 昨天公司运维说机房的HP服务器磁盘坏了,我当时冷汗一下子就出来了,因为这是测试库,没有备份,没有归档,但是里面 ...
最新文章
- [原创]Coding4Fun检测你的网络,用C#获取本机TCP、UDP状态及连接(二)
- Linux的文件管理
- mysql闪退或者can not connect 127.0.0.1
- python axis 0_axis=0在sum()和dropna()中的行为似乎不同
- 会计科目登错怎么更正
- linux vim(gvim) 多标签页,Vim 的标签页功能
- 干的漂亮!一夜之间GPS在南海信号全无,美军只能干瞪眼
- (day 15 - 双指针)剑指 Offer 18. 删除链表的节点
- ubuntu14上安装ros教程
- 移远ec20 openLinux交叉编译python
- Python 文件路径
- VOIP Codec 三剑客之 ISAC/ILBC -- ISAC (1) 介绍
- 王春亮推拿学堂:如何成为一名高级调理师
- 计算机专业论文评语,计算机毕业论文评语
- 反转一个英语句子c++
- javaScript -- touch事件详解(touchstart、touchmove和touchend)
- 某计算机系统20位地址线 8位数据线,同济大学2009-2010(1)微机原理期终试题(A B卷)含答案.doc...
- 转行网络工程师,软考和华为认证选哪个?
- 南阳理工学院计算机科学与技术分数线,2017南阳理工计算机科学与技术分数
- vue项目接入阿里云智能验证
热门文章
- 网易Java面试必问:月薪20k+的Java面试都问些什么
- 小米商城下载APP页面
- 仿照美团用并查集实现迷宫
- Locality Sensitive Hashing原理与实现
- 平台活动免费送,免费领取1个月优酷/爱奇艺/腾讯视频会员
- Win7+AMD+VS2013+opencl1.x安装与测试
- 翻译GDC演讲《精心制作一个微小的开放世界:‘A Short Hike‘ 事后分析》(3):关卡设计
- C# 高仿腾讯QQ (窗口皮肤美化)(附测试源码)
- 日本早稻田大学的研究人员,使用AI给黑白照片着色
- 用于快速Web开发的5大Python Web框架