Oracle : 리스너(Listener)
오라클 리스너는 네트워크를 이용하여 클라이언트에서 오라클 서버로 연결하기 위한 오라클 네트워크 관리자 입니다. 네트워크를 통한 연결은 모두 리스너가 담당하며 리스너와 연결되기 위해서는 클라이언트에 오라클 NET8(오라클 클라이언트)이 설치되어 있고 이를 통해 오라클 서비스명이라는 것을 만들어 접속을 해야 합니다.
오라클 서버에서 리스너를 시작시켜줘야 클라이언트들이 접속을 할 수 있습니다.
lsnrctl 명령어로 리스너를 관리 할 수 있습니다.
1. 리스너 구성하기
EM으로 DB 설치시 기본적으로 구성된다.
① GUI 모드에서 설치하기
리눅스 GUI환경에서 새터미널 열고
$ netca 입력
적당한 리스너 이름 및 포트(오라클 기본 포트 1521)를 지정하여 설치하면 된다.
② 사일런트 모드로 설치하기
$ cd /home/oracle/product/10g/bin/
$ ./netca /silent /log /home/oracle/product/10g/network/tools/log/netca.log /responseFile /home/oracle/database/response/netca.rsp
2. 리스너 작동 확인
① 리스너 관리 접속
$ lsnrctl
② listener2 중지시키고 테스트
LSNRCTL> stop
$ tnsping testdb ← clonedb 이름은 tnsnames.ora 파일에 있는 이름이다.
TNS-12541: TNS:no listener → 에러
③ listener2 시작시키고 테스트
LSNRCTL> start
LSNRCTL> status listener
$ tnsping testdb
OK (0 msec) → 에러 안나고 성공
리스너 재 구동시 에러 관련부분
일반적으로 오라클의 리스너를 재시작 하려면,
lsnrctl stop 명령을 이용하여 리스너를 중지하고,
lsnrctl start 명령을 이용하여 리스너를 시작한다.
특정 사이트에서 lsnrctl reload로 리스너를 로드 시키는 경우가 있다.
이 명령을 사용하면 stop되어 있던 리스너가 재 가동 되는 효과를 볼 수 있다.
문제는 현재의 listener.ora파일의 설정을 가져와서 리스너의 환경으로 설정하는 것이 아니라, 이전에 설정되어 있던 내용을 가지고 현재의 리스너를 구동시킨다.
정상적인 listener.ora파일의 경우 리스너의 Stop / Start 가 가능한 상태이며 아무런 지장에 없습니다.
listener.ora 파일을 손상 시키고, lsnrctl reload 해보면 아무런 문제가 발생하지 않고 리스너가 작동한다.
이는 정상적으로 리스너 파일이 로드되고 있지 않음을 나타낸다.
리스너 파일이 잘못 되어 있다면 리스너 시작시 오류를 나타내고 실행되지 않아야 정상이다.
※ 결론 : listener.ora파일이 변경되면 꼭 리스너를 중지하고 재시작 하는 과정이 필요하다.
오라클 리스너는 네트워크를 이용하여 클라이언트에서 오라클 서버로 연결하기 위한 오라클 네트워크 관리자 입니다. 네트워크를 통한 연결은 모두 리스너가 담당하며 리스너와 연결되기 위해서는 클라이언트에 오라클 NET8(오라클 클라이언트)이 설치되어 있고 이를 통해 오라클 서비스명이라는 것을 만들어 접속을 해야 합니다.
오라클 서버에서 리스너를 시작시켜줘야 클라이언트들이 접속을 할 수 있습니다.
lsnrctl 명령어로 리스너를 관리 할 수 있습니다.
1. 리스너 구성하기
EM으로 DB 설치시 기본적으로 구성된다.
① GUI 모드에서 설치하기
리눅스 GUI환경에서 새터미널 열고
$ netca 입력
적당한 리스너 이름 및 포트(오라클 기본 포트 1521)를 지정하여 설치하면 된다.
② 사일런트 모드로 설치하기
$ cd /home/oracle/product/10g/bin/
$ ./netca /silent /log /home/oracle/product/10g/network/tools/log/netca.log /responseFile /home/oracle/database/response/netca.rsp
2. 리스너 작동 확인
① 리스너 관리 접속
$ lsnrctl
② listener2 중지시키고 테스트
LSNRCTL> stop
$ tnsping testdb ← clonedb 이름은 tnsnames.ora 파일에 있는 이름이다.
TNS-12541: TNS:no listener → 에러
③ listener2 시작시키고 테스트
LSNRCTL> start
LSNRCTL> status listener
$ tnsping testdb
OK (0 msec) → 에러 안나고 성공
리스너 재 구동시 에러 관련부분
일반적으로 오라클의 리스너를 재시작 하려면,
lsnrctl stop 명령을 이용하여 리스너를 중지하고,
lsnrctl start 명령을 이용하여 리스너를 시작한다.
특정 사이트에서 lsnrctl reload로 리스너를 로드 시키는 경우가 있다.
이 명령을 사용하면 stop되어 있던 리스너가 재 가동 되는 효과를 볼 수 있다.
문제는 현재의 listener.ora파일의 설정을 가져와서 리스너의 환경으로 설정하는 것이 아니라, 이전에 설정되어 있던 내용을 가지고 현재의 리스너를 구동시킨다.
정상적인 listener.ora파일의 경우 리스너의 Stop / Start 가 가능한 상태이며 아무런 지장에 없습니다.
listener.ora 파일을 손상 시키고, lsnrctl reload 해보면 아무런 문제가 발생하지 않고 리스너가 작동한다.
이는 정상적으로 리스너 파일이 로드되고 있지 않음을 나타낸다.
리스너 파일이 잘못 되어 있다면 리스너 시작시 오류를 나타내고 실행되지 않아야 정상이다.
※ 결론 : listener.ora파일이 변경되면 꼭 리스너를 중지하고 재시작 하는 과정이 필요하다.
'Oracle > Oracle - 설치' 카테고리의 다른 글
오라클 용어 - 인스턴스, database (0) | 2011.12.28 |
---|---|
OEL5 + 11g 설치 _OUI (0) | 2011.12.27 |
RHEL4 + 10g 설치 _silent mode (0) | 2011.12.23 |
RHEL4 + 10g 설치 _OUI (0) | 2011.12.23 |
패치(Patch) 용어정리 및 DB 패치 방법 (0) | 2011.12.23 |