SOLVED
ORA-01000: Maximum Open Cursors Exceeded
Asked by OracleDba••11 views•oracle
#oracle#error
123456789101112131415161718192021222324252627282930313233343536373839404142434445
This ORA-01000 error occurs when current open_cursors exceeds the defined open_cursor parameter database.
SELECT max(a.value) as highest_open_cur, p.value as max_open_cur FROM v$sesstat a,
v$statname b, v$parameter p WHERE a.statistic# = b.statistic# and b.name = 'opened cursors current'
and p.name= 'open_cursors' group by p.value;
HIGHEST_OPEN_CUR MAX_OPEN_CUR
---------------- -----------------------
320 300
SQL> show parameter open_cursor
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_cursors integer 300
Here we can see the highest_open_curosor is more than max_open_cursor. So to avoid this, increase the open_cursor values in spfile.
SQL> alter system set open_cursors=1000;
System altered.
Now check again.
To get more information you can use the below query to find what session was causing the issue.
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' and s.username is not null;
VALUE USERNAME SID SERIAL#
---------- ------------------------------ ---------- ----------
2 SYS 12 61990
Hope it Helps!