본문 바로가기

IT관련

오라클 에러 정보 (ORA-00609) - TNS-12537, TNS_12547, TNS-12535, Fatal NI 등의 에러와 함께 발생하는

Oracle Alert Log 에 아래와 같이 ORA-609 에러가 많이 목격되는 경우가 종종 있습니다.

 

 

ORA-609 에러는 클라이언트와 커넥션이 끊어져서 Dedicated Server를 종료시킬때 발생합니다.

 

 

그럼, 클라이언트와 통신이 끊어졌다는 메시지도 나와야 겠죠~ 그게 TNS-12537, TNS-12535 등입니다..

아래와 같이 Fatal NI connect error ... 라고 alert log 에 잔뜩 생깁니다.

 

 

결국, ORA-609 에러는 SQL*Net 네트워크 연결과 관련된 에러입니다.

이렇게 네트워크 연결에 문제가 생기는 원인은 상당히 많습니다. 방화벽 때문일 수도 있고, 클라이언트쪽에 진짜로 문제가 있어서 그럴수도 있고... 이 원인을 찾는것은 쉽지 않은 일인데.. 원인을 찾기위해 SQL*Net에 Trace 거는 방법이 사용되기도 합니다. (참고 MOS Doc ID 1116960.1, 1121357.1)

 

또, DB서버에 설정된 Connect Timeout 값을 늘려주기도 합니다.

"Sqlnet.ora" 파일에 SQLNET.INBOUND_CONNECT_TIMEOUT=120 설정.

이게 Default 는 60 초 입니다. 120초로 늘려주는 것이죠. 

보통 이렇게 해주면 없어집니다.

 

이 Fatal NI 에러가 예전 10g 버전까지는 DB Alertlog 에 쌓이지 않고, SQL*Net log 에 쌓였었습니다.

11g 부터 갑자기 alert log 에 쌓이는 걸로 바뀌면서 DBA를 많이 놀라게 했죠~~ ㅎㅎ

이걸 예전처럼 바꿀 수도 있습니다.

 


      1. Sqlnet.ora 파일
         > DIAG_ADR_ENABLED = OFF (sqlnet.ora 파일이 경로에 없을 시 생성해서 저장해주시면 됨)
      2. Listener.ora 파일
         > DIAG_ADR_ENABLED_[리스너명] = OFF
      3. 리스너 재기동 또는 (lsnrctl reload 리스너명)으로 리스너 환경 리로드

 

 

참고 => 오라클 Alertlog 파일분석 프로그램