编译和执行存储过程 间歇性报错 ORA-00600 内部错误代码 参数 [kcbnew_3] [18]

wpjyx 2010-10-28 03:05:59
问题症状:
1.出现问题前编译,执行存储过程都是没问题的
2.突然间执行和编译存储过剩报错
3.多试几次或者过会 编译和执行存储过程,又不报错了
4.没有与之冲突的程序在执行
5.网络也正常,在服务器本机操作也报错
6.重启服务器后,问题依然存在
7.报错内容: ORA-00600 内部错误代码,参数 [kcbnew_3] [18] [] [] [] [] [] []

编译和执行存储过程 间歇性报错 求高人指点,非常感谢
...全文
535 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wpjyx 2010-11-01
  • 打赏
  • 举报
回复
跟踪3天后,报错的问题没有再出现,很奇怪得就消失了....
感谢majy和wkc168的支持
wpjyx 2010-10-29
  • 打赏
  • 举报
回复
刚才上网查了下:
在Oracle的一些版本上Buffer overflow 的漏洞,可被恶意利用造成缓冲区溢出

从症状上看应该是缓冲区溢出

我已增加SGA的缓冲区高速缓存,再跟踪一天看看,实在不行就换10g
majy 2010-10-29
  • 打赏
  • 举报
回复
去下补丁吧,打补丁前做好备份工作。
wpjyx 2010-10-29
  • 打赏
  • 举报
回复
表空间现在是够的,没有啥太大的改动,表空间现在大约60GB
majy 2010-10-29
  • 打赏
  • 举报
回复
这是一个bug,oracle公司在9.2.0.4的补丁上修改了。你们的数据库是不是对表空间做过什么动作?
心中的彩虹 2010-10-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wpjyx 的回复:]
现在其他的存储过程也有问题
当个的update语句也有问题
例如:
UPDATE sbu_payoff_detail t
SET t.net_income = t.other_hfyt
WHERE t.report_date = '2010-09-01'
AND t.unit_id = '19cc1b:10a8d0d6117:-7ffe'
AND t.prod_kind_code ……
[/Quote]
你去查看alert.log文件看到底是那条最先引起这个错误
心中的彩虹 2010-10-28
  • 打赏
  • 举报
回复
[Quote=引用楼主 wpjyx 的回复:]
问题症状:
1.出现问题前编译,执行存储过程都是没问题的
2.突然间执行和编译存储过剩报错
3.多试几次或者过会 编译和执行存储过程,又不报错了
4.没有与之冲突的程序在执行
5.网络也正常,在服务器本机操作也报错
6.重启服务器后,问题依然存在
7.报错内容: ORA-00600 内部错误代码,参数 [kcbnew_3] [18] [] [] [] [] [] []

编译和执……
[/Quote]
一般ora-600的错误要么是语句的问题要么是bug
majy 2010-10-28
  • 打赏
  • 举报
回复
那只能联系 oracle公司了,打电话咨询吧,有可能一个补丁就解决问题的
wpjyx 2010-10-28
  • 打赏
  • 举报
回复
现在其他的存储过程也有问题
当个的update语句也有问题
例如:
UPDATE sbu_payoff_detail t
SET t.net_income = t.other_hfyt
WHERE t.report_date = '2010-09-01'
AND t.unit_id = '19cc1b:10a8d0d6117:-7ffe'
AND t.prod_kind_code = '999';
也报同样的错误,一会报错一会不报错的
majy 2010-10-28
  • 打赏
  • 举报
回复
呵呵,那就不是存储过程的问题了。应该是其他问题引起来了,你编译一下其他存储过程试试,如果其他的没问题,就把现在的这个存储过程改个名字,说不定就没问题了
wpjyx 2010-10-28
  • 打赏
  • 举报
回复
整个存储过程只留下
CREATE OR REPLACE PROCEDURE proc_aaa IS
BEGIN
COMMIT;
END;

依然在报ORA-00600,内部错误代码,参数 [kcbnew_3] [20] 错误
majy 2010-10-28
  • 打赏
  • 举报
回复
看看你的存储过程是不是用了比较高的版本的函数,刚好这个函数在这个oracle版本上不稳定
wpjyx 2010-10-28
  • 打赏
  • 举报
回复
服务器物理内存16GB
SGA:
共享池:304MB
缓冲区高速缓存:800MB
大型池:32MB
java池:32MB
SGA总容量:1170.435MB
SGA的最大大小:1282.572MB

PGA:
总计PGA目标:320MB
分配的当前PGA:59922KB
分配的最大PGA:84485KB
高速缓存命中百分比:95.58%


从SGA和PGA的数据看,内存是够用的

至于版本问题,我们这边是公司买的正版Oracle9.2.0.1.0,自07年装机后,就没升级过补丁,一直没问题,这突然出现间歇性的报错问题,若是版本问题,怎会3年后出现问题呢?

请高人指教。
gelyon 2010-10-28
  • 打赏
  • 举报
回复
楼主这个问题,很多人都遇到过,有可能是低版本的原因,升级一下试试
majy 2010-10-28
  • 打赏
  • 举报
回复
看看你的数据库参数配置,尤其是sga和pga方面的,有可能是这方面的原因。

其实最大的原因有可能就是你的版本不是商业版的(不是买的),补丁没打全(有的补丁是要花钱的),后面的小版本比较低

3,490

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧