[Oracle] Listener & Oracel DB

2023. 3. 12. 18:33

Listener 리스너

  • 클라이언트에서 오라클 서버로 연결하기 위한 오라클 네트워크 관리자
  • 기본 포트 번호 1521 (다른 번호 사용 가능)
  • listener.ora 파일에 텍스트 형식으로 기록

 

listener.ora 파일?

더보기
  • 오라클 서버에서 클라이언트 요청을 듣고, 클라이언트와의 통신 환경을 설정하는 파일
  • 오라클 서버에 존재, 오라클 클라이언트에서 서버로 접속할 때 필요한 프로토콜 및 포트 정보 등을 설정하는 파일
--리스너 관리모드
$ lsnrctl

--리스너 시작
$ lsnrctl start

--리스너 중지
$ lsnrctl stop

--리스너 재시작
$ lsnrctrl reload

리눅스 환경에서는 정확한 경로에 접근해서 해당 프로그램을 실행해야 한다. lsnrctl 프로그램의 정확한 위치는 오라클홈 밑의 bin 디렉터리에 있다.

ex) '/app/oracle/a/bin'

 

 

연결 과정

1. user가 리스너로 연결 요청 (tnsnames.ora 파일 확인 & 리스너의 주소와 포트번호 등 확인)

2. 리스너가 Server process에 연결 요청 (자신이 연결 할 포트번호 등을 listener.ora에서 확인)

3. Server process에서 PGA 메모리 할당(Program Global Area - Process들이 개별적으로 사용하는 메모리 공간)

4. Server process에서 User process에게 Resend 패킷 전송

5. 연결

 

 

tnsnames.ora 파일?

더보기
  • 클라이언트가 오라클 서버에 접속하기 위해 서버 컴퓨터에 작성하는 설정 파일
  • 클라이언트에서 오라클 서버로 접속할 때 필요한 프로토콜 및 포트 번호, 서버 주소, 인스턴스 등을 설정해주는 파일
  • TNS는 TCP 프로토콜만 받을 수 있음
LISTENER_CDB1 =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.102(PORT = 1521))
 
 
CDB1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.102)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = cdb1)
    )
  )
listener.ora 파일 수정
$vi $ORACLE_HOME/network/admin/listener.ora
 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 설정했던 host name 또는 host IP)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )


리스너가 DB를 못 찾을 경우 listener.ora에 아래 내용 추가

SID_LIST_LISTENER =
 (SID_LIST =
  (SID_DESC =
   (GLOBAL_DBNAME = DB명)
   (ORACLE_HOME = ORACLE_HOME 경로
   (SID_NAME = DB명)
  )
 )

 

 

Oracel

+ 먼저 아래 명령어 입력으로 Oracle DB 생성

$dbca

 

> startup

입력 시 문자가 제대로 출력되지 않는다면 아래 내용으로 문자셋 설정 편집

더보기

$ vi .bash_profile

 
$ export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
 
$ resource .bash_profile
--Oracle 접속
$ sqlplus '/as sysdba'

--인스턴스 시작
> startup

--인스턴스 중지
shutdown

 

'Database > Oracle' 카테고리의 다른 글

[Oracle] 관리자 계정(system, sys) 비밀번호 변경  (0) 2023.03.16
[Oracle] 이전 명령어 방향키로 출력  (0) 2023.03.15
[Oracle] Sequence  (0) 2023.03.13
[Oracle] SCN, Checkpoint  (0) 2023.03.12
[Oracle] 구조  (0) 2023.03.09

+ Recent posts