Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50538 Library:50621 in /data/nginxdata/www/askhellodba/qa-include/qa-db.php on line 66
ORA-01000: maximum open cursors exceeded---MMON - AskHelloDBA
AskHelloDBA是数据库技术问答社区,欢迎大家提问,交流数据库技术,讨论DBA人生!

ORA-01000: maximum open cursors exceeded---MMON

0 投票

 

*** 2012-05-03 07:32:19.298
Checking RLB queue status failed. ORA-01000: maximum open cursors exceeded
Error executing stmt : CREATE type SYS$RLBTYP as object (srv VARCHAR2(1024), payload VARCHAR2(2048))
RLB SQL failed. ORA-01000: maximum open cursors exceeded
 
通过:
select a.value, s.username, s.sid, s.serial# 
from v$sesstat a, v$statname b, v$session s 
where a.statistic# = b.statistic# and s.sid=a.sid 
and b.name = 'opened cursors current'; 
发现是MMON进程产生的这一问题.
 
Checking RLB queue status failed. ORA-04063: view "SYS.DBA_QUEUES" has errors
Error executing stmt : BEGIN DBMS_AQADM.CREATE_QUEUE_TABLE('SYS$SERVICE_METRICS_TAB', 'SYS$RLBTYP', 'tablespace sysaux, storage (INITIAL 1M next 1M pctincrease 0)', NULL, TRUE); END;
RLB SQL failed. ORA-04063: package body "SYS.DBMS_AQADM_SYS" has errors
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_AQADM_SYS"
ORA-06512: at "SYS.DBMS_AQADM", line 58
ORA-06512: at line 1
04/28/12 09:16:09 >ERROR: exception at dbms_ha_alerts_prvt.post_instance_up308: SQLCODE -13917,ORA-13917: Posting system
 alert with reason_id 135 failed with code [5] [post_error]
04/28/12 09:16:09 >ERROR: exception at dbms_ha_alerts_prvt.check_ha_resources637: SQLCODE -13917,ORA-13917: Posting syst
em alert with reason_id 136 failed with code [5] [post_error]
04/28/12 09:16:09 >parameter dump for dbms_ha_alerts_prvt.check_ha_resources
04/28/12 09:16:09 > - local_db_unique_name (racdb)
04/28/12 09:16:09 > - local_db_domain (==N/A==)
04/28/12 09:16:09 > - rows deleted (0)
04/28/12 09:16:09 >ERROR: exception at dbms_ha_alerts_prvt.check_ha_resources637: SQLCODE -13917,ORA-13917: Posting syst
em alert with reason_id 136 failed with code [5] [post_error]
04/28/12 09:16:09 >parameter dump for dbms_ha_alerts_prvt.check_ha_resources
04/28/12 09:16:09 > - local_db_unique_name (racdb)
04/28/12 09:16:09 > - local_db_domain (==N/A==)
04/28/12 09:16:09 > - rows deleted (0)
 
不知该如何处理?
 
时间: 2012年 5月 4日 分类:Oracle 作者: kissingwolf (120 基本)

1个回答

0 投票
你的cursor相关的参数设置是啥样的?

 

是不是设置的太保守了?
已回复 2012年 5月 4日 作者: jametong (1,080 基本)
Cursor 设置为1000
1000应该够用了,检查下有没有失效对象一类的?尤其是同义词。以前遇到过同样的问题,这种cursor溢出一般是在循环里发生的。
你好! 确实存在对象失效的情况。ORA-04063: view "SYS.DBA_QUEUES" has errors ,ORA-04063: package body "SYS.DBMS_AQADM_SYS" has errors,应该是AQ有关的对象,不知道如何处理?
这里有个案例:升级后导致的数据字典不完整,可以参考下,https://kr.forums.oracle.com/forums/thread.jspa?threadID=925780
不知道你这个库之前是否做过升级,这里有个升级导致类似失效对象的案例,可以参考下:https://kr.forums.oracle.com/forums/thread.jspa?threadID=925780
谢谢 nulldb ,看了链接,但是好像没有说怎么解决的。