ORA-01000: 超出打开游标的最大数

[复制链接]
查看11 | 回复1 | 2014-2-18 16:44:08 | 显示全部楼层 |阅读模式
本帖最后由 一眼泉水 于 2014-1-23 09:14 编辑
SQL> show parameter process
NAME
TYPEVALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes
integer 0
db_writer_processes
integer 2
gcs_server_processes
integer 0
job_queue_processes
integer 10
log_archive_max_processes
integer 2
processes
integer 1000
SQL> show parameter session
NAME
TYPEVALUE
------------------------------------ ----------- ------------------------------
java_max_sessionspace_size integer 0
java_soft_sessionspace_limit integer 0
license_max_sessions
integer 0
license_sessions_warning
integer 0
logmnr_max_persistent_sessions integer 1
session_cached_cursors
integer 1000
session_max_open_files
integer 10
sessions
integer 1105
shared_server_sessions
integer
SQL> show parameter cursor
NAME
TYPEVALUE
------------------------------------ ----------- ------------------------------
cursor_sharing
stringEXACT
cursor_space_for_time
boolean FALSE
open_cursors
integer 3000
session_cached_cursors
integer 1000
select s.USERNAME,S.sid,s.SERIAL#,p.SPID, osuser, machine, count(*) num_cursfrom v$open_cursor o, v$session s,v$process pwhere /*user_name = '' and*/ o.sid=s.sidand p.ADDR=s.PADDRgroup by s.USERNAME,S.sid,s.SERIAL#,p.SPID, osuser, machineorder by num_curs desc
USERNAME SIDSERIAL# SPID OSUSER MACHINENUM_CURS
---------------- ---------- ------------ -------- -------------------
UQRY_SEL104356598 18825oracle hastadb1 1035
………………
………………
我设置的参数都已经很大了,从单个session的cursor数量上看,1035远远小于3000,
为什么还会经常出现ORA-01000: 超出打开游标的最大数??
难道修改open_cursor也需要重启数据库吗?



回复

使用道具 举报

千问 | 2014-2-18 16:44:08 | 显示全部楼层
SQL> select count(*) from v$open_cursor;
COUNT(*)
----------
12812
这个值一直很大,这个值应该是所有会话的cursor数量。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行