Oracle 클 라 이언 트 의 설치 와 원 격 연결 설정 방법 공유
6893 단어 Oracle 클 라 이언 트
1.Oracle Net 프로 토 콜
다음 그림 에서 보 듯 이 Oracle 은 Oracle Net 협 의 를 통 해 클 라 이언 트 와 서버 측의 연결 과 데이터 전달 을 실현 한다.Oracle Net 은 Oracle 데이터베이스 서버 와 클 라 이언 트 에 동시에 상주 하 는 소프트웨어 층 으로 TCP/IP 프로 토 콜 을 패키지 하여 클 라 이언 트 응용 프로그램 이 데이터베이스 서버 로 연결 되 는 것 을 책임 집 니 다.
아래 그림 에서 보 듯 이 클 라 이언 트 가 보 낸 요청 은 먼저 OracleNet 프로 토 콜 을 통 해 네트워크 를 통 해 전송 할 수 있 는 정보 로 전환 하고 TCP/IP 네트워크 를 통 해 데이터베이스 서버 에 요청 을 전송 합 니 다.서버 측 에서 클 라 이언 트 요청 을 받 은 후 오 라 클 넷 프로 토 콜 을 통 해 데이터베이스 로 요청 을 변환 하여 실 행 된 로 컬 명령 을 설명 하고 서버 측 에서 실행(주로 입 출력 작업)하고 결 과 를 TCP/IP 프로 토 콜 과 오 라 클 넷 프로 토 콜 을 통 해 클 라 이언 트 에 전송 해 야 합 니 다.
2.클 라 이언 트 와 서버 의 연결 과정
클 라 이언 트 와 서버 의 연결 체 제 를 분석 하기 전에 두 가지 개념 을 정의 해 야 한다.하 나 는 Oracle 모니터 이 고 하 나 는 Oracle 네트워크 서비스 이름 이다.
Oracle 데이터베이스 서버 는'Oracle Net 모니터'라 는 구성 요 소 를 통 해 클 라 이언 트 로부터 연결 요청 을 받 습 니 다.감청 기 는 서버 쪽 에 있 는 백 엔 드 프로 세 스 로 데이터베이스 에 보 내 는 클 라 이언 트 연결 요청 입 니 다.먼저 서버 쪽 의 감청 기 에 의 해 탐지 되 고 해당 하 는 데이터베이스 인 스 턴 스 에 요청 을 전달 하여 클 라 이언 트 와 서버 의 연결 을 만 듭 니 다.연결 이 구축 되면 클 라 이언 트 와 서버 측 이 직접 통신 할 수 있 고 모니터 가 참여 하지 않 아 도 됩 니 다.
감청 기 가 고객 이 요청 한 감청 을 실현 하려 면 감청 포트,감청 기 가 있 는 데이터베이스 의 전역 데이터베이스 이름,데이터베이스 실례 등 정 보 를 포함 하여 감청 기 를 설정 해 야 한다.
Oracle 네트워크 서비스 이름 은 클 라 이언 트 연결 서버 의 설정 정보(실제 연결 요청 내용)를 대표 하 는 식별 자 입 니 다.데이터베이스 호스트 주소,감청 포트,전역 데이터베이스 이름 등 내용((전역 데이터베이스,데이터베이스 사례 등 은 Oracle 데이터베이스 설치 부분 을 참고 하 십시오)을 포함 합 니 다.
그림 에서 보 듯 이 클 라 이언 트 와 서버 의 연결 과정 은 다음 과 같다.
(1)우선 서버 측 에 상주 하 는 감청 기(감청 서 비 스 를 열 려 면)감청 클 라 이언 트 가 보 낸 연결 요청 이 있 습 니 다. (2)사용 자 는 클 라 이언 트(기업 서버 또는 SQL 도구)에 사용자 이름,암호 및 네트워크 서비스 이름 을 입력 하거나 SQL 명령 줄 에'CONNECTusername/password@net_Service_"name"과 유사 한 요청 입 니 다. (3)클 라 이언 트 는 네트워크 서비스 프로필 tnsname.ora 를 보고 네트워크 서비스 이름 을 Oracle 서버 주소,감청 포트 와 전역 데이터베이스 이름 을 포함 하 는 연결 설명자 로 표시 합 니 다. (4)클 라 이언 트 는 연결 설명자 에 따라 모니터 를 찾 고 네트워크 를 통 해 연결 정 보 를 모니터 에 전달한다. (5)감청 기 는 감청 프로필 listener.ora 를 조회 하여 연결 할 데이터베이스 서버 를 찾 습 니 다. (6)클 라 이언 트 와 서버 가 통신 을 시작한다.
모니터 설정
1.모니터 추가 및 설정
다음 그림 에서 보 듯 이 Oracle Net Configuration Asistant 도 구 를 사용 하여 서버 의 모니터 를 추가 하고 설정 합 니 다.
감청 프로그램 설정 이 완료 되면 데이터베이스 시스템 이 자동 으로 이 감청 기 를 시작 합 니 다.
감청 기 를 추가 하고 설정 한 후에 도 Oracle NetManager 도 구 를 사용 하여 감청 위치,감청 기 가 서비스 하 는 전역 데이터베이스 이름 등 감청 기 설정 을 조회 하고 수정 할 수 있다.다음 그림 에서 보 듯 이:
이 설치 에 대해 모니터 설정 정 보 는 E:\\Oracle 에 기 록 됩 니 다.서버\oracle\\ora92etwork\admin\\listener.ora 파일 에 있 습 니 다.그 주요 내용 은 다음 과 같다.
LISTENER= (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = tsinghua-p5z3mm)(PORT =1521)) ) ) )
SID_LIST_LISTENER = (SID_LIST= (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = E:\Oracle_Server\oracle\ora92) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = mydb.bawei) (ORACLE_HOME = E:\Oracle_Server\oracle\ora92) (SID_NAME = mydb) ) )
3.클 라 이언 트 도구 의 설치 와 네트워크 서비스의 설정
데이터베이스 호스트 와 다른 기기 에 클 라 이언 트 도 구 를 설치 하고 클 라 이언 트 네트워크 서 비 스 를 설정 하여 데이터베이스 서버 에 연결 할 수 있 습 니 다.클 라 이언 트 설치 와 설정 과정 은 다음 그림 과 같다.(본 설 치 는 클 라 이언 트 를 데이터베이스 와 같은 기계 의 다른 디 렉 터 리 에 설치 하여 원 격 으로 데이터 베 이 스 를 방문 하 는 상황 을 모 의 한다)
클 라 이언 트 를 설치 하고 클 라 이언 트 네트워크 서비스 이름 을 설정 한 후에 클 라 이언 트 도구 에서 원 격 데이터베이스 서버 에 로그 인하 고 방문 할 수 있 습 니 다.이 설치 에 대해 클 라 이언 트 네트워크 서비스 설정 은 E:\Oracle 에 기 록 됩 니 다.Client\oracle\\ora92etwork\\admin\tnsnames.ora 파일 의 주요 내용 은 다음 과 같 습 니 다.
REMOTEDB= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.6)(PORT =1521)) ) (CONNECT_DATA = (SERVICE_NAME = mydb.bawei) ) )
이렇게 하면 클 라 이언 트 도구 에 네트워크 서비스 이름 reotedb 를 입력 하면 데이터베이스 주소,포트,전역 데이터베이스 이름 등 정보 로 분 석 됩 니 다.입력 한 사용자 이름,비밀번호 와 함께 서버 에 보 내 고 감청 기 에서 받 으 며 감청 프로필 과 대조 하여 해당 하 는 데이터베이스 인 스 턴 스 처리 에 요청 합 니 다.
클 라 이언 트 네트워크 서 비 스 는 클 라 이언 트 의 Oracle Net Manager 도 구 를 사용 하여 수정 할 수 있 고 새로운 클 라 이언 트 네트워크 서비스 이름 도 추가 할 수 있다.
지적 해 야 할 것 은:
서버 측의 클 라 이언 트 도구(SQL PLUS,기업 관리 콘 솔 등)는 데이터베이스 서비스의 연결 메커니즘 과 원 격 클 라 이언 트 연결 이 같다. Oracle 데이터 베 이 스 를 설치 한 후 시스템 은 기본적으로 데이터베이스 서버 로 컬 에 SQLPLUS 등 클 라 이언 트 도 구 를 설치 하고 감청 프로필 의 같은 위치 E:\Oracle서버\oracle\\ora92etwork\\admin 폴 더 에 서버 측의 네트워크 서비스 연결 프로필 tnsnames.ora 를 기본적으로 제공 합 니 다.데이터베이스 실례 SID 와 같은 이름 의 네트워크 서비스 이름 설정 을 포함 합 니 다.데이터베이스 가 있 는 호스트 이름 이나 IP 주소,감청 포트,데이터 라 이브 러 리 서비스 이름(전역 데이터베이스 이름)등 을 포함 합 니 다.이 설치 에 대해 이 tnsnames.ora 파일 의 주요 내용 은 다음 과 같 습 니 다.
MYDB = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = tsinghua-p5z3mm)(PORT =1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = mydb.bawei) ) )
데이터베이스 서버 의 클 라 이언 트 도 구 를 사용 할 때 원 격 클 라 이언 트 에서 서버 를 연결 하 는 것 과 마찬가지 로 입력 한 사용자 이름,비밀번호 및 네트워크 서비스 이름(또는 CONNECTusername/와 유사 합 니 다.password@net_Service_name 의 SQL 명령 행)tnsnames.ora 파일 을 찾 습 니 다.네트워크 연결 서비스 이름 을 찾 으 면 net 와 같 습 니 다.Service_name 의 하나 로 데이터베이스 호스트 주소,감청 포트,전역 데이터베이스 이름 등 정 보 를 가 져 옵 니 다.
이 요청 정 보 는 감청 포트 로 전송 되 며,감청 기 는 이 정 보 를 같은 폴 더 E:\\Oracle서버\oracle\\ora92etwork\\admin 의 listener.ora 감청 기 설정 파일 을 대조 합 니 다.listener.ora 감청 기 설정 파일 에 일치 하 는 항목 이 포함 되 어 있 으 면 해당 하 는 데이터베이스 인 스 턴 스 로 요청 합 니 다.
이 를 통 해 알 수 있 듯 이 서버 측의 클 라 이언 트 도 구 는 데이터베이스 서비스의 연결 과 원 격 클 라 이언 트 연결 과 마찬가지 로 같은 과정 을 수행 했다. 실제로 서버 쪽 의 클 라 이언 트 도 구 는 서버 쪽 tnsnames.ora 와 listener.ora 를 통 해 검증 하고 연결 하 는 것 입 니 다.원 격 클 라 이언 트 는 클 라 이언 트 의 tnsnames.ora 와 서버 측의 listener.ora 를 통 해 인증 과 연결 을 수행 합 니 다.