ORACLE ORA-00600 [17059][]错误的排除
前两天后台日志和线上程序都报了这样的ORACLE错误
基本上ORACLE的600错误是非常让人讨厌的错误。查阅了一下:
ORA-600 [17059] [a]
VERSIONS:
versions 7.1 to 10.1
DESCRIPTION:
While building a table to hold the list of child cursor dependencies
relating to a given parent cursor, we exceed the maximum possible size
of the table.
ARGUMENTS:
Arg [a] Object containing the table
FUNCTIONALITY:
Kernel Generic Library cache manager
IMPACT:
PROCESS FAILURE
NON CORRUPTIVE - No underlying data corruption.
SUGGESTIONS:
One symptom of this error is that the session will appear to hang for a
period of time prior to this error being reported.
If the Known Issues section below does not help in terms of identifying
a solution, please submit the trace files and alert.log to Oracle
Support Services for further analysis.
Issuing this SQL as SYS (SYSDBA) may help show any problem
objects in the dictionary:
select do.obj#,
po.obj# ,
p_timestamp,
po.stime ,
decode(sign(po.stime-p_timestamp),0,'SAME','*DIFFER*') X
from sys.obj$ do, sys.dependency$ d, sys.obj$ po
where P_OBJ#=po.obj#(+)
and D_OBJ#=do.obj#
and do.status=1 /*dependent is valid*/
and po.status=1 /*parent is valid*/
and po.stime!=p_timestamp /*parent timestamp not match*/
order by 2,1
;
Normally the above select would return no rows. If any rows are
returned the listed dependent objects may need recompiling.
非法的对象是没有了,应该是child cursor过多造成的。联想因为某种原因(不能说了),我修改了一个数据库参数:
立刻捕捉这句SQL
虽然看到的SQL貌似已经完成了绑定,但是一定还是有些问题的。当研发同事查询到这句SQL的时候告诉我:“没有问题是绑定的。”,但是这句SQL的rownum小于的是一个确切数字(10),没错就是它!让研发同事也按照其他变量的方式绑定这个确切的“变量”。将修改的程序重新上线,LOAD=1,VERSION_COUNT=1而执行次数超过12万(程序运行2个小时后),不再报600错!
我的这个解决办法只是根据数据库现有的模式因势利导给出的。这种cursor_sharing = TRUE方式其实一直存在很多争议。毕竟的“偷窥变量”是ORACLE一厢情愿的事情,时常不会太准确的,并且存在性能上的风险。-:)
转载于:https://blog.51cto.com/miracle/69829
ORACLE ORA-00600 [17059][]错误的排除相关推荐
- Oracle Ora 错误解决方案合集
Oracle Ora 错误解决方案合集 参考文章: (1)Oracle Ora 错误解决方案合集 (2)https://www.cnblogs.com/ios9/p/8627643.html 备忘一下 ...
- linux dnf装oracle,linux上安装Oracle 包括常见安装错误(centos8.1,oracle linux8,redhat 8)通过...
linux上安装Oracle 包括常见安装错误(centos8.1,oracle linux8,redhat 8)通过 谨记 关闭操作系统之前先关闭oracle数据库 oracle用户登录,执行lsn ...
- Oracle 11g RAC ASM 错误之(1)
Oracle 11g RAC ASM 错误之(1) 系统环境: 操作系统:RedHat EL5.5 集群软件: GI (11.2.0.1) 数据库软件:Oracle 11g(11.2.0.1) 故障 ...
- oracle 11g r2 rac中节点时间不同步,Oracle 11gR2 安装RAC错误之--时钟不同步
系统环境: 操作系统:RedHat EL5 Cluster: Oracle GI(Grid Infrastructure) Oracle: Oracle 11.2.0.1.0 如图所示:RAC 系统架 ...
- Oracle ORA
ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 OR ...
- 连接Oracle时出现ORA-12505错误
连接Oracle时出现ORA-12505错误 问题:使用eclipse连接Oracle数据库时报错:Listener refused the connection with the following ...
- C#操作Oracle数据库连接超时的错误处理
C#操作Oracle数据库连接超时的错误处理 创建时间: 2007/08/09 最近在使用C#操作Oracle数据库时发现了一个奇怪的问题, 在数据库会话存在超时限制时, 即使客户端重新连 ...
- sql链接oracle12514,客户端连接到oracle数据库出现12514错误
Oracle-12514错误发生的几种原因 ora-12514: TNS: 无法处理服 登录Oracle数据库时提示"ORA-12514:TNS 监听程序当此问题解决的方法和详细的操作步骤如 ...
- oracle 启动错误1067,oracle监听器启动1067错误处理
oracle监听器启动1067错误处理 在一次web开发的练习中,要用到oracle数据库,然后启动oracle服务时可以正常启动,启动OracleOraDb10g_home1TNSListener服 ...
最新文章
- 动态规划法求最大字段和时间复杂度_九章算法 | 动态规划:最长上升子序列
- 大数据开发实战:数据仓库技术
- C#、C++、JAVA中虚函数和抽象函数的概念对比
- Fiddler 4设置代理后无法上网的问题解决办法(亲测有效)
- python制作gif动画_实用的Python(2)利用Python制作gif动图
- Linux网络编程 之 IO多路复用poll(九)
- Java静态方法与非静态方法的泛型
- oracle group by 多类别_python数据关系型图表散点图系列多数据系列
- 云原生时代,Java 的危与机
- 什么是 Hadoop 生态系统
- 移动端的头部标签和meta
- Hi3559AV100移植友方4G模块N720V5(一)
- 最适合管理的计算机语言,PLC 编程语言的优劣,哪种语言更适合编程
- 恢复U盘分区:windows自带工具diskpart
- 使用anysdk打包android渠道
- 200佳优秀的精美网页欣赏网站推荐(系列八)
- 谷歌宣布Android设备累计激活量突破10亿台
- yuv显卡转换rgb
- 使用curl下载压缩文件
- 【自动微分原理】具体实现方式
热门文章
- VMware vSphere Management Assistant Guide
- 每日一小练——高速Fibonacci数算法
- 浏览器汇总介绍--Opera
- [C++]出错member access into incomplete type
- Python思维导图框架总结
- Java 使用 POI 对 Excel文件 进行读写操作
- Hive(三)——数据定义
- 华为 台积电 高通申请_台积电/高通纷纷力挺华为!全面放下姿态:将不再断供华为芯片产品...
- AcWing 861. 二分图的最大匹配(匈牙利算法)
- notepad格式化html代码快捷键,Notepad++中代码格式化插件NppAStyle使用介绍