Solved

Need advice on how to close cursors?

Posted on 2014-09-23
9
186 Views
Last Modified: 2014-11-16
Hello,
I have ORA-01000: maximum open cursors exceeded.
Can you please help me with advice/or a script to close the cursors?
Regards,
Shobha.
0
Comment
Question by:Rao_S
9 Comments
 
LVL 13

Accepted Solution

by:
Alexander Eßer [Alex140181] earned 125 total points
ID: 40338755
How do you access the DB?! Via JDBC or ADO...?! A common problem here is NOT closing/disposing the connection properly...
I suppose we do need more background information considering your issue...
0
 
LVL 76

Assisted Solution

by:slightwv (䄆 Netminder)
slightwv (䄆 Netminder) earned 250 total points
ID: 40338910
I agree with the above post.  It is likely the code isn't properly closing and disposing of connections.

I just wanted to add that it this is in PL/SQL, it is a simple close command:
http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/close_statement.htm#i32987
0
 
LVL 35

Assisted Solution

by:Mark Geerlings
Mark Geerlings earned 125 total points
ID: 40340700
If you don't have direct control over the application code, your other option is to change the limit for open_cursors in your init*.ora or spfile to a higher value.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 

Author Comment

by:Rao_S
ID: 40341465
Hello,
We are setting up the new 12c OEM.
We have the app server hosting the 12c OMS and backend is single instance oracle database.
Regards,
Shobha
0
 

Author Comment

by:Rao_S
ID: 40341508
I did change the limit from 300 to 500 hundred, but i think as suggested above i need to find how the connection to the DB is made and check the code to properly close or dispose of the connections..
0
 
LVL 1

Expert Comment

by:Sameer Ahamed Sathar
ID: 40349434
Hi Shobha,

Increasing cursor limits is not a permanent solution.Just check the objects which is making the continuous connection and keep the same open.There you need to add "Close Cursor_name" condition to resolve the issue permanently.

Thanks,
Sameer Sathar
0
 
LVL 76

Assisted Solution

by:slightwv (䄆 Netminder)
slightwv (䄆 Netminder) earned 250 total points
ID: 40349713
>>Increasing cursor limits is not a permanent solution

It can be a permanent solution.  If it is decided that this is 'normal' behavior for the applications based on the number of users, then you need to tune the database appropriately.
0
 
LVL 22

Expert Comment

by:Steve Wales
ID: 40445440
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Converting a row into a column 2 49
PL/SQL Display based on value 4 26
clob to char in oracle 3 34
Extract Currency data from a string and put them in a new field 3 36
Why doesn't the Oracle optimizer use my index? Querying too much data Most Oracle developers know that an index is useful when you can use it to restrict your result set to a small number of the total rows in a table. So, the obvious side…
I remember the day when someone asked me to create a user for an application developement. The user should be able to create views and materialized views and, so, I used the following syntax: (CODE) This way, I guessed, I would ensure that use…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
This video shows how to copy an entire tablespace from one database to another database using Transportable Tablespace functionality.

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now