[JDBC] DB 접속이 안된다 (ORA-12514)
1. 문제상황
- 웹어플리케이션에서 JDBC로 오라클 DB와 연동을 했는데 아래 에러코드가 발생함
ORA-12514: TNS:리스너가 현재 접속 기술자에 요청된 서비스를 알지 못함
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
기본적으로 JDBC 연동을 위해선
1) 웹어플리케이션에서의 DB설정이 정확해야하고
2) 오라클 DB에서 listener.ora, tnsname.ora, sqlnet.ora 설정이 정확해야하고
3) 웹어플리케이션 - 오라클DB간 방화벽이 뚫려있어야한다.
2. 해결과정
- ORA 에러가 발생했기에 DB서버의 리스너 재가동을 먼저 했으나 에러는 여전했다.
- 방화벽은 잘 뚫려있었다.
→ 남은 원인은 하나, 웹어플리케이션 DB설정 문제였다.
* JDBC 설정시 IP, PORT는 정확했으나 서비스 네임이 틀렸다.
특히, RAC 환경에서는 DB에서 서비스 네임을 설정할때 숫자가 안 들어가있으니 주의.
참고 자료 : sarc.io/index.php/oracledatabase/186-2014-06-10-01-33-05
오라클 접속 정보 설정(listener.ora, sqlnet.ora, tnsnames.ora)
[{"id":"7","listid":"1","parentid":"0","videosource":"youtube","videoid":"KiwjxNKXfxY","imageurl":"https:\/\/i.ytimg.com\/vi\/KiwjxNKXfxY\/default.jpg,120,90;https:\/\/i.ytimg.com\/vi\/KiwjxNKXfxY\/mqdefault.jpg,320,180;https:\/\/i.ytimg.com\/vi\/KiwjxNKXf
sarc.io