개발

ORA-01000: maximum open cursors exceeded

greinke 2023. 10. 20. 22:11

ora-01000 = "최대 열기 커서 수를 초과했습니다"

 

ORA-01000: 최대 열기 커서 수를 초과했습니다

(maximum open cursors exceeded)

 

Oracle DBMS 를 운영하다보면 자주 만나는 에러가 ORA-01000 입니다.

 

이 에러는 한 세션에서 커서가 오라클에서 설정한 수를 초과했을 경우 발생한다.

Oracle DBMS 를 운영하다보면 ORA-01000 해당 에러가 자주 발생 하는데요.

 

해당 에러는 open cursor 의 갯수가 설정된 Max 값을 초과했다는 의미입니다.

 

말 그대로 연결에 대한 최대 커서가 초과했기 때문입니다.

대부분 connection 과 pstmt 를 닫아주면 되는데,

 

pstmt.close();

conn.close();

pstmt.close();
conn.close();

 

위의 구문을 사용해서, 간단히 에러를 해결할 수 있다.

 

그래도 잘 해결이 되지 않는다면,

 

커서를 조회하는 쿼리가 필요하다.

 

SELECT Q.SQL_TEXT

FROM  V$OPEN_CURSOR O

               JOIN V$SQL Q

ON Q.HASH_VALUE=O.HASH_VALUE

WHERE O.SID = 열린 커서 수에서 확인한 SID 값;

 

사실을 너무나 해결 하기 쉬운 오류 이다.

 

ORA-01000: 최대 열기 커서 수를 초과했습니다

(maximum open cursors exceeded)

 

꼭 까먹지 말고 커서 열어 놓고, 닫는것을 확인 해야 한다.