Oracle 데이터베이스에 JDBC나 SQL Developer로 연결할 때 ORA-12514, TNS:listener does not currently know of service requested in connect descriptor 오류를 만난 적 있으신가요?

이 오류는 주로 JDBC URL이나 TNS 설정에서 잘못된 서비스 이름(service name) 을 사용했을 때 발생합니다.


이 글에서는 ORA-12514 오류의 원인과 가장 빠른 해결 방법을 실제 예제와 함께 설명합니다. Oracle 리스너 설정을 처음 접하는 개발자나 운영자에게도 이해하기 쉽게 안내합니다.


🔍 ORA-12514 오류란?

Oracle에서 ORA-12514 오류는 클라이언트가 요청한 서비스 이름을 리스너가 인식하지 못할 때 발생합니다.


오류 메시지

ORA-12514, TNS:listener does not currently know of service requested in connect descriptor


즉, JDBC나 SQL Developer가 Oracle 서버에 접속하려 할 때, URL에 적힌 서비스 이름이 Oracle 리스너에 등록되어 있지 않음을 의미합니다.


🧾 발생 예시

JDBC 연결 예 (Service Name 방식)

jdbc:oracle:thin:@//db.example.com:1521/ORCL


잘못된 경우

  • /ORCL ← Oracle 서버에 이 service_name이 등록되어 있지 않음
  • 이로 인해 ORA-12514 오류 발생

🛠️ 해결 방법 요약

✅ 1. 리스너가 인식하는 서비스 이름 확인

Oracle 서버에서 다음 명령어 입력

lsnrctl status


출력 예시

Services Summary...
Service "ORCLPDB1" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...

  • "ORCLPDB1" → Service Name
  • "orcl" → SID


✅ 2. SID 확인 방법 (DB 서버에서 직접 확인)

SID는 Oracle 인스턴스를 식별하는 고유 이름입니다. SID를 확인하는 방법은 다음과 같습니다.


▶ SQL*Plus 접속 후 확인

SELECT instance_name FROM v$instance;


▶ 결과 예시

INSTANCE_NAME
--------------
ORCL


✅ 3. JDBC URL 수정

수정 전 (오류 발생)

jdbc:oracle:thin:@//db.example.com:1521/ORCL


수정 후 (정상 동작)

jdbc:oracle:thin:@//db.example.com:1521/ORCLPDB1


✅ 4. SID 방식으로 연결하려면?

jdbc:oracle:thin:@db.example.com:1521:ORCL


  • : 뒤에 오는 것은 SID
  • / 뒤에 오는 것은 Service Name
  • 둘은 절대 같지 않을 수도 있으니 주의!


📋 정리 표

구분설명
오류 코드ORA-12514
원인JDBC URL의 service_name이 리스너에 없음
확인 방법lsnrctl status 또는 DBA에게 문의
해결 방법올바른 Service Name으로 URL 수정
SID 연결@host:port:SID 형식 사용
Service Name 연결@//host:port/service_name 형식 사용

📋 에러 해결 체크리스트

  1. lsnrctl status 로 서비스 이름 확인
  2. SELECT instance_name FROM v$instance; 로 SID 확인
  3. URL 형식이 Service Name인지 SID인지 구분
  4. DB에 맞는 JDBC URL로 수정
  5. 애플리케이션 재시작

✅ 결론

ORA-12514 오류는 단순한 오타나 잘못된 설정 때문에 자주 발생하지만, 그 원인을 정확히 이해하면 1~2분 만에 해결할 수 있습니다.
Oracle 서버에서 리스너가 실제 인식 중인 서비스 이름을 먼저 확인하고, 그에 맞게 JDBC 또는 TNS 연결 정보를 수정해 보세요.