본문 바로가기
Oracle/Oracle Admin

Oracle Listener ORA-12514: TNS

by 의미와의미 2022. 3. 7.
반응형

Oracle Listener ORA-12514: TNS

 

#구성환경
Windows : 2012R2
DBMS : Oracle 19.3.0.0

#오라클 클라이언트를 통해 오라클 DB서버 접속이 불가 트러블슈팅 진행

 


#SQL 접속불가

>sqlplus system/oracle@orcl

SQL*Plus: Release 19.0.0.0.0 - Production on 월 12월 20 13:06:10 2021
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

ERROR:
ORA-12514: TNS:리스너가 현재 접속 기술자에 요청된 서비스를 알지 못함

 

#리스너 상태 확인

>LSNRCTL STATUS
LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 20-12월-2021 13:0
4:07

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.11)(PORT=1521)))에 연결되었
습니다
리스너의 상태
------------------------
별칭                     LISTENER
버전                     TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Produc
tion
시작 날짜                 20-12월-2021 12:55:02
업타임                   0 일 0 시간. 9 분. 8 초
트레이스 수준            off
보안                     ON: Local OS Authentication
SNMP                     OFF리스너 매개변수 파일   C:\app\19C\product\WINDOWS.X6
4_193000_db_home\network\admin\listener.ora
리스너 로그 파일         C:\app\Oracle\diag\tnslsnr\WIN-7HURHCC0\listener\alert\
log.xml
끝점 요약 청취 중...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.11)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
서비스 요약...
"CLRExtProc" 서비스는 1개의 인스턴스를 가집니다.
  "CLRExtProc" 인스턴스(UNKNOWN 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다

#인스턴스 UNKOWN 상태 확인

#LISTENER.ORA 파일 TNSNAMES.ORA 파일 확인

#LISTENER.ORA 파일 
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\app\19C\product\WINDOWS.X64_193000_db_home)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\19C\product\WINDOWS.X64_193000_db_home\bin\oraclr19.dll")
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

#TNSNAMES.ORA 파일
ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )
ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

 

#TNSPING  리스너 핑을 확인합니다.

>TNSPING ORCL
별칭 분석을 위해 TNSNAMES 어댑터 사용
(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.11)
(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))에 접속하려고 시도하는 중

확인(10밀리초)

리스너핑은 작동하는 것을 합니다. 그러나 sqplus system/oracle@orcl 원격접속은 여전히 안되는 상황

 

> Windows 오라클 서버에 원격으로 접속하여 파리미터 확인해본 결과

#오라클 파라미터 확인

SQL> show parameter local

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
local_listener                       string      LISTENER_ORCL


local_listener     VALUE 값이 LISTENER_ORCL


local_listener     VALUE 값이 LISTENER_ORCL 지정 되어있습니다.

현재 리스너 사용 IP를 적용하여 해결합니다.

SQL> Alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.11)(PORT=1521))' scope=both;
시스템이 변경되었습니다.

SQL> alter system register;
시스템이 변경되었습니다.

SQL> show parameter local
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
local_listener                       string      (ADDRESS=(PROTOCOL=TCP)(HOST=1
                                                 92.168.56.11)(PORT=1521))


#리스너 상태 확인

>lsnrctl status

LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 20-12월-2021 13:1
2:33

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.11)(PORT=1521)))에 연결되었
습니다
리스너의 상태
------------------------
별칭                     LISTENER
버전                     TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Produc
tion
시작 날짜                 20-12월-2021 12:55:02
업타임                   0 일 0 시간. 17 분. 34 초
트레이스 수준            off
보안                     ON: Local OS Authentication
SNMP                     OFF리스너 매개변수 파일   C:\app\19C\product\WINDOWS.X6
4_193000_db_home\network\admin\listener.ora
리스너 로그 파일         C:\app\Oracle\diag\tnslsnr\WIN-7HURHCC0\listener\alert\
log.xml
끝점 요약 청취 중...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.11)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
서비스 요약...
"CLRExtProc" 서비스는 1개의 인스턴스를 가집니다.
  "CLRExtProc" 인스턴스(UNKNOWN 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orcl" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
"orclXDB" 서비스는 1개의 인스턴스를 가집니다.
  "orcl" 인스턴스(READY 상태)는 이 서비스에 대해 1 처리기를 가집니다.
명령이 성공적으로 수행되었습니다.

 

#클라이언트 접속 확인

>sqlplus system/oracle@orcl

SQL*Plus: Release 19.0.0.0.0 - Production on 월 12월 20 13:21:04 2021
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

마지막 성공한 로그인 시간: 월 12월 20 2021 11:50:39 +09:00

다음에 접속됨:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> select instance_name , status from v$instance;

INSTANCE_NAME    STATUS
---------------- ------------
orcl             OPEN
반응형

댓글