달력

42024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

어제까지만 해도 잘사용하던 페이지가 아침에 와서 확인해보니, 접속이 되어지지 않는다.

톰캣이 정지되어있는지 알고 확인해보니 톰캣은 멀쩡하고, DB접속이 안된다.

DB서버가 내려갔거나, 리스너가 내려간줄 알고 DB가 설치된 서버로 접속, 하지만...

​문제없이 시작되어있었다. DB접속 툴을 이용하여 붙어보려 했지만,붙지 않음

그래서 sqlplus "/as sysdbd" 로 접속해봤는데 잘붙어진다.


그렇다면 어떤게 문제인지 DB로그를 볼차례

app\Administrator\diag\rdbms\orcl\orcl\trace

alert_orcl.log  해당로그와

app\Administrator\diag\tnslsnr\XXXX\listener\alert

log.xml 파일을 열어보았다.​

log.xml에서 아래와같은 오류를 발견하였다.


<txt>TNS-12560: TNS:프로토콜 어댑터 오류
 TNS-00530: 프로토콜 어댑터 오류입니다
 32-bit Windows Error: 53: Unknown error
 TNS-12518: TNS:리스너가 클라이언트 접속을 다룰 수 없습니다
 TNS-12571: TNS:패킷 기록자 실패
 TNS-12560: TNS:프로토콜 어댑터 오류
 TNS-00530: 프로토콜 어댑터 오류입니다
 32-bit Windows Error: 54: Unknown error
</txt>



열심히 구글링을 해본결과, 아래사이트에서

https://pavandba.com/tag/tns-12560-tns-protocol-adapter-error/



If the listener.log is greater than 4GB in size,
the listener may fail to start on Windows platforms.
(만약 listener.log로그 크기가 4GB보다 크면 윈도우에서 리스너시작이 실패할 수 있다.)

해당 문구를 발견하였다.



app\Administrator\diag\tnslsnr\XXXXXX\listener\trace 경로에

listener.log 가 있는곳을 보니, 역시나 로그의 크기가 4기가가 되었다.



해결방법


CMD창을 이용하여 경로에서 아래의 명령어 실행

​lsnrctl set log_status off   ->  listener.log를 비활성화 시킵니다.
rename listener.log listener.old  -> 기존 listener 이름 변경
lsnrctl set log_status on   -> listener.log를 활성화 시킵니다.



사실 명령어로 쳐서 해도 되지만, 나같은경우에는 그냥 서비스에 있는 리스너를 중지하고

listener.log를 listener.old 로 변경하고 다시 리스너를 시작하였더니,

정상작동 되었다.

아무것도 변경한게 없는데 갑자기 DB에 접속이 안된다면, 이부분 확인해봐야 할듯 하다.









Posted by 푸른길땡
|