2020. 5. 29. 09:54ㆍ오류노트/DB
잘 돌고있던 소프트웨어가 안도는 현상이 발생해 방문하니
ORACLE DB에 연결이 안되서 문제가 발생하였다. (기억하기 위해 기억에 의존해서 쓴글이기 때문에 틀릴 수 있다)
ODBC 데이터 원본 관리자에서 TEST CONNECTION 을 하여도 TNS-12541, TNS-12547 등
리스너에 연결할 수 없다거나, 리스너 연결이 끊어졌다는 오류를 접하였다.
이전에는 같은 오류가 떴을때 검색을 통하여
윈도우 서비스의
Orcl~Services
~TNSListener~
로 되어있는 두개의 서비스를 재시작 하니 해결했던 적이 있어서 비슷하게 실행하였고
sqlplus "/as sysdba" -> sqlplus 접근 확인
connect id/pw -> 계정접근 확인
lsnrctl stop -> 리스너멈춤
lsnrctl services -> 리스너 동기화?
lsnrctl start -> 리스너시작
lsnrctl status -> 리스너 상태 확인
모두 정상 동작하여 이상이 없다고 판단하고 소프트웨어를 다시 구동하니 똑같은 오류가 발생하였다.
listner.ora, tnsname.ora(?) 파일을 확인했으나 역시 이상이 없었고
ODBC 데이터 원본 관리자도 재등록하고 테스트해보았으나 역시 TNS-12547 연결이 끊어졌다는 오류가 발생하였다.
tnsping [tnsName] 을 쳤을때 응답시간이 오래걸리긴 했지만 정상 동작하여서 다른곳에서 문제를 찾느라 헤매었는데
응답시간이 오래걸리는게 이상하여 검색해보니 리스너 로그 파일이 4gb를 초과했을경우 리스너가 시작되지 않거나 여러가지 오류가 뜰 수 있다고 한다.
https://pavandba.com/tag/tns-12560-tns-protocol-adapter-error/
TNS-12560: TNS: Protocol adapter error – Pavan DBA's Blog
Posted by Pavan DBA on March 27, 2012 Let me share an experience with you people which I faced 2 weeks back… I got an email from application team stating they are unable to connect to database and getting below error TNS-12518: TNS: listener could not ha
pavandba.com
%오라클홈%\diag\tnslsnr\XXXXXX\listener\trace 경로에 들어가니 listner.log 가 존재했고 예상대로 4gb가 넘었다.
삭제하기 위해
1.lsnrctl set log_status off -> listener.log 로그 비활성화
2.윈도우에서 listener서비스 중지
3.listener.log 로그삭제
4. lsnrctl set log_status on -> listener.log 로그 활성화
이후 tnsping [tnsName] 을 날려서 응답시간을 테스트해보니 0ms 3ms 등 바로 응답이 오는걸 확인할 수 있었고
DB연결을 확인 후 소프트웨어를 동작하니 잘 동작하였다.