公司用java开发的一套系统,数据库用的是oracle10,前阵子DBA反应alert_XXX.log日志中有"ora-01000:maximum open cursors exceeded",还一直有"ORA-1000 encountered when generating server alert SMG-3503",由于网上基本只有ora-01000的说明(有的人甚至把ora-01000写成ora-1000),我不知道ora-1000是何情况,与ora-01000有关吗?
    DBA那边就要定是我们这边问题,而且说和游标有关,但是ora-01000错误从日志文件里看,从2009年8月份第一次出现到2010年1月报告为止就出现过3次,8月1次,9月2次,后面就没有了.而ora-1000虽说是ora-01000同一天出现,但是时间段早于ora-01000,后面没有ora-01000错误了但是依旧有ora-1000
    ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 10:37:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 10:46:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 10:56:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 11:06:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 11:16:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 11:27:38 2010
ORA-1000 encountered when generating server alert SMG-3503
Fri Jan 22 11:36:38 2010
ORA-1000 encountered when generating server alert SMG-3503
    像这样的不停出现,时间间隔不定,有时就在10分钟左右.
    我不知道这个信息告诉了些什么,该从何入手解决,望CSDN上的兄弟姐妹们提供帮助!!!!!!!!!

解决方案 »

  1.   

    首先说明一点:
    ora-1000就是ora-01000好比你在ORACLE数据库里number型插入01000,结果你发现,其实值就是1000。
    其次,这个信息说明,你的session打开的cursor太多,超过了open_cursors参数。作为DBA,他应该很清楚怎么做,2条路:1  调高open_cursors参数   --治标不治本2  检查应用程序,是否有打开cursor未及时关闭的情况。
      

  2.   

        俺不是DBA,但是通过01000问题也知道open_cursors参数和程序里打开游标情况的问题;
       目前有一个现象是我通过PL/SQL查询数据库select USER_NAME,sid,count(*) from v$open_cursor group by USER_NAME,sid;发现,USER_NAME为SYS的几个sid占用的比较多的游标,而我们系统使用数据库用的是SALES用户登录的,占用的游标数并不多
    USER_NAME sid count(*)
    SYS 157 312
    SYS 138 32
    SYS 142 31
    SYS 156 18
    SALES 158 16
    SALES 150 10
    SALES 146 9
    SYS 153 7
    SYS 155 7
    SALES 149 5
    SYS 162 4
    SALES 144 4
    SYS 143 4
    SYS 161 2
    SYS 152 2
    SYS 154 1
    SYS 159 1
       open_cursors参数值为1000,打开游标数也保持在500左右.还有157,138,142这几个大量开启游标的sid在v$session找不到,这个说明什么??
       系统不停地报ORA-1000时因为有游标长时间未关闭???从游标打开数来看,离上线仍然有一定距离的啊.