Oracle Net 연결
▶ Oracle Net은 다음 조건에 따라 네트워크에 있는 응용 프로그램 간에 연결을 설정하는데 사용된다.
- 네트워크 구성
- Node의 위치
- 응용 프로그램
- 네트워크 프로토콜
▶ 연결유형
- 클라이언트 – Server 응용 프로그램 : 가장 쉽게 말하면 SQL Plus가 될 수 있다.
- Java 응용 프로그램
- 웹 클라이언트 응용 프로그램
클라이언트 – Server 응용 프로그램 연결
[그림 설명] SQL Plus 에서 사용하는 내부 프로토콜이라고 할 수 있다.
> Oracle Protocol Supprt : 오라클 넷이 설치되면 대부분의 프로토콜 어댑터가 설치되는데, 클라이언트에서
작성되어진 프로토콜 언어를 네트워크 프로토콜 언어로 변환해준다.
> 오른쪽 표에서는 스택구조로 가장 마지막에 처리되었던 네트워크 프로토콜을 받아 단계별로 처리하고
최종적으로는 Oracle RDBMS 로 전달된다.
웹 클라이언트 응용 프로그램 연결
▶ 웹 브라우저는 다음 방식으로 Oracle Server에 연결할 수 있다. [3계층 구조]
▶ 다음 중 하나로 구성되는 중간 계층으로 응용 프로그램 웹 Server를 사용한다.
- JDBC OCI (Oracle Call Interface) 드라이버
- Thin JDBC 드라이버
▶ HTTP를 사용하여 Oracle Server에 직접 연결
- i-SQL 방식과 같이 클라이언트가 DB의 정보를 바로 받아온다.
[그림 설명] 웹 클라이언트 응용 프로그램 연결 : 응용 프로그램 웹 Server 중간 계층
웹 클라이언트 응용 프로그램 연결 : Java 응용 프로그램 클라이언트
웹 클라이언트 응용 프로그램 연결 : Java 애플릿 클라이언트
HTTP를 사용한 웹 연결
웹 브라우저 직접연결
개념 및 용어
• Database 서비스
• 서비스 이름
Database의 논리적 표현
Database가 클라이언트에 표시되는 방식
• Connect Descriptor
Database 의 위치
Database 서비스의 이름
- 이것은 클라이언트도 필요하고 DB 서버에게도 필요하다.
• Listener
클라이언트의 연결 요청 수신
Database Server 로 요청 전달
- 서버측에서 필요한 구성요소, 즉. 원격에서 접속하려고 하는 클라이언트들의 접속을 수신하는 프로세서
- 오라클 인스턴스 외부에 존재하는 것이며, DB를 Shutdown 하더라도 존재할 수 있다. DB와 독립적
• 서비스 등록
Database가 Listener에 정보 등록
각 Instance에 사용할 수 있는 서비스 처리기
-Listener가 DB의 정보를 알아야 하는데(즉, Startup 이 되어 Connect가 가능한 상태),
DB의 정보를Listener 에게 알려준다. (서비스동록이라고 한다)
- 구성방법은 수동 / 자동(파라미터 파일)
• 서비스 처리기 (Service Handler)
연결 지점
- 클라이언트의 최종목적지(서버에 따라 달라질 수 있다)
Dispatcher 또는 Dedicated Server
- Dispatcher 라면 서버가 Shared Server를 의미.
-클라이언트가 Dedicated Server로 연결하면 Spawn - Bequeath 접속방식(?)
-클라이언트가 Listener를 통해 Dispatcher로 연결하면 Redirect 접속 방식== Direct hand-off
Oracle .net 구성모델
• 지역화된 관리
- 네트워크의 각 컴퓨터에 있는 로컬 파일
- 오라클 설치시에 설치되는 tnsnames.ora 파일을 수정하여 접속.
- 배포는 오라클 DB 관리자가 사용할 클라이언트에게 사본으로 각 컴퓨터에 설치를 하여 사용하고
접속법만 가르쳐 준다.
- 문제점 : 관리할 컴퓨터가 늘어나면, 관리자가 매우 힘들다 -_-;;; 노가다 구나 .
DB가 변경이 되면, 배포된 모든 tnsnames.ora 를 재배포 하거나 수정을 해야 한다.
• 중앙화된 관리
- LDAP 호환 Directory Server
- Oracle Names Server
- 중앙에 Name Server 를 배치시켜 관리한다.
- Oracle 9i 이상 버전에서는 Oracle Names 두 가지가 있다.
Oracle Internet Directory(LDAP)
- Names Server 를 사용함으로써 외부로 서버의 위치를 노출하지 않기 때문에, 보안상의 이점도 있다.
이름 지정 방식 개요
• 이름 지정 방식은 Database 서비스에 대한 연결을 시도할 때 클라이언트 응용프로그램에서 연결 식별자를
Connect Descriptor로 변환하기 위해 사용한다.
(oracle:thin:@localhost ............) <--이것처럼 @ 뒤에 붙는 식별자를 의미하며, 이것은 IP만 되는 것이 아니라.
다른 방식으로도 가능하다.
• Oracle Net은 다음의 다섯 가지 이름 지정 방식을 제공한다.
- 호스트 이름 지정
- 로컬 이름 지정
- Directory 이름 지정
- Oracle Names
- 외부 이름 지정 - 비 오라클 방식을 의미하며, 흔하지 않다.
Oracle Net 구성 파일
• ldap.ora: 요즘은거의 사용하지 않는다. 인터넷 디렉토리 서버(미들티어)를 구성
• names.ora :
• tnsnames.ora :현재로서 아직까지는 가장 많이 사용하는 방식. (클라이언트가 필요한 파일)
• listener.ora: 오라클 데이터베이스 서버가 필요한 파일.
• sqlnet.ora
: 클라이언트 / 서버를 가리지 않고, 어느 컴퓨터에라도 있을 수 있는 파일이며,
수많은 네트워크 관련 파라미터를 가지고 있다.
'Web Develop Tech > Oracle9i Fundmantal II' 카테고리의 다른 글
ORACLE - Net Server 측 구성 (0) | 2012.10.26 |
---|---|
ORACLE - 이름 지정 방식 구성 (0) | 2012.10.26 |
ORACLE - Oracle Shared Server의 사용 및 구성 (0) | 2012.10.26 |
ORACLE - Oracle Shared Server의 사용 및 구성 [실습] (0) | 2012.10.26 |
ORACLE - Backup and Recovery 개요 (0) | 2012.10.26 |