반응형
✅ 1. Oracle Listener란?
Oracle Listener는 외부에서 오는 DB 접속 요청을 받아 Oracle DB에 연결해주는 네트워크 서비스임.
🔹 역할
- 클라이언트가 DB 서버에 접속하려 할 때,
- 어떤 DB 인스턴스를
- 어떤 포트로
- 어떤 프로토콜로 접속할지 중계함
- 실제 연결 처리는 Oracle이 하고, Listener는 중개자 역할
🔹 동작 위치
- 일반적으로 서버 측에서 백그라운드로 동작
- 리눅스에서는 listener는 listener.ora 파일 기준으로 동작
- 리스너 프로세스: tnslsnr
✅ 2. listener.ora 파일
리스너 설정이 저장된 파일. 보통 아래 경로에 존재함:
$ORACLE_HOME/network/admin/listener.ora
🔹 기본 예시:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(SID_NAME = orcl)
(ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1)
)
)
🔹 주요 항목 설명
항목 | 설명 |
PROTOCOL | 보통 TCP 사용 |
HOST | DB 서버 IP 또는 호스트명 |
PORT | 기본 포트는 1521 |
SID_NAME | Oracle 인스턴스 이름 |
ORACLE_HOME | Oracle 설치 경로 |
✅ 3. tnsnames.ora 파일
클라이언트 측에서 Oracle DB에 접속하기 위한 접속 정보(alias) 를 저장하는 설정 파일
🔹 위치
$ORACLE_HOME/network/admin/tnsnames.ora
🔹 예시
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
🔹 구성 요소 설명
항목 | 설명 |
ORCL | 접속 별칭(alias), SQL*Plus 등에서 사용할 이름 |
HOST | 접속할 DB 서버의 IP 또는 도메인 |
PORT | 접속 포트 |
SERVICE_NAME | DB 서비스 이름 (select value from v$parameter where name='service_names'; 로 확인 가능) |
✅ 4. 접속 흐름 (Linux 기준)
[클라이언트]
↓ tnsnames.ora (접속 정보)
↓
[리스너가 열려 있는 Oracle 서버: 1521포트]
↓ listener.ora 기준으로 연결 판단
↓
Oracle 인스턴스와 접속
✅ 5. 리스너 관련 명령어
🔹 리스너 시작/정지/재시작
lsnrctl start
lsnrctl stop
lsnrctl reload # 설정파일 재반영
🔹 리스너 상태 확인
lsnrctl status
출력 예시:
Service "orcl" has 1 instance(s). Instance "orcl", status READY, has 1 handler(s) for this service...
✅ 6. 실무 팁 (Linux 기준)
리스너 로그 확인:
$ORACLE_BASE/diag/tnslsnr/<hostname>/listener/trace/listener.log
포트 확인:
netstat -tnlp | grep 1521
tnsnames.ora 없이 직접 접속:
sqlplus user/pass@//dbhost:1521/orcl
📌 핵심 요약
항목 | 설명 |
listener.ora | 서버 측 리스너 설정 |
tnsnames.ora | 클라이언트 측 접속 정보 설정 |
포트 | 기본 1521 |
리스너 명령 | lsnrctl start/status/reload |
반응형
'OS' 카테고리의 다른 글
[Linux] 커널패닉(Kernel Panic)이란? (0) | 2025.04.29 |
---|---|
[Linux] Apache-tomcat Out of Memory 란 (0) | 2025.04.29 |
[Linux] Chrony 설정하는 방법 (0) | 2025.04.29 |
[Windows] Win + R 실행창 유용 명령어 모음 (1) | 2025.04.29 |
[Linux] 사용하지 않는 포트 비활성화 하는 방법 (0) | 2025.04.29 |