1、在alert_lxdb.log日志中报600错误
Errors in file /u01/app/oracle/admin/lxdb/udump/lxdb_ora_50379.trc:
ORA-00600: internal error code, arguments: [kkslhsh1], [101], [], [], [], [], [], []
注意这个问题可能会导致产生非常大的trc 文件而导致 文件系统满!
2、本问题的产生根本原因: 设置了 cursor_sharing = force
目前看起来虽然系统没有这样设置但是 应用里面极可能设置了: alter session set cursor_sharing = force 。
因为从v$sqlarea中提取出的sql可能一看出来,现在查询 v$sqlarea.version_count的最大值是485,来自metalink 的bug 列表中显示,当这个数字大于100的时候 就可能导致问题。
SQL> select max(version_count) from v$sqlarea;
MAX(VERSION_COUNT)
------------------
485
3、解决办法暂时有三种:
(1)升级数据库到9.2.0.6的版本,如果设置 cursor_sharing = similar会导致inser ... select ..发生问题,则需要9.2.0.8才能解决。
(2)修改应用,去掉alter session 而使用绑定变量。
(3)周期性的暂时 alter system flush shared_pool,目前这样几小时一次或许可以临时解决问题。
查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/