Oracle

게시글 보기
작성자 유건데이타 등록일 2015-05-16
제목 How to set up and use Net8 'Hostname' naming adapter
How to set up and use Net8 'Hostname' naming adapter

Net8 에서 client side 에 configuration file 없이 작동 가능한
새로운 기능입니다 이것은 간단한 conversion algorithm 을 이용하여
client 가 지정한 connecting alias 를 sql*net connect string 으로
conversion 됩니다 tcp/ip protocol 에만 유일하게 적용됩니다



--- Hostname Adapter 설정


1. Net8 listener 위에서 db 가 정상 작동하는지 확인

2. LISTENER.ORA configuration file 에 hostname 을 GLOBAL_DBNAME parameter
로 설정합니다 .

예)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(SID_NAME=RC80)
(GLOBAL_DBNAME=o200.kr.oracle.com)
(ORACLE_HOME=/mnt3/rctest80/app/oracle/product/804)
)
)


3. listener 의 정상작동 여부 확인 : port 1521 (TCP/IP)

예)
(PROTOCOL=TCP)(HOST=o200.kr.oracle.com)(PORT=1521)


4. client 쪽에서는 해당 db 에 대해 다음과 같은 alias 로 connect 가능합니다

alias : 'myhostname.kr.oracle.com'.

예) sqlplus scott/tiger@o200.kr.oracle.com



--- 작동 원리

Net8 connect 된 alias 를 가지고 'gethostbyname()' system call 을 이용하여
이것이 정확한 hostname 인지를 check 합니다. 이것이 정확하다면 net8 connection
이 tcp/ip에서 해당 port 위에서 정확한 connection 이라고 인지하게 됩니다.

예) sqlplus scott/tiger@somehost.somewhere

내부적으로 다음과 같이 변환됨

(DESCRIPTION=
(CONNECT_DATA=
(SID=*)
(SERVICE_NAME=somehost.somewhere)
)
(ADDRESS=
(PROTOCOL=TCP)
(HOST=somehost.somewhere)
(PORT=1521)
)
)


예) sqlplus scott/tiger@ahost

내부적으로 다음과 같이 변환됨

(DESCRIPTION=
(CONNECT_DATA=(SID=*)(SERVICE_NAME=ahost.domainname))
(ADDRESS=(PROTOCOL=TCP)(HOST=ahost)(PORT=1521))
)
Comment
등록된 코멘트가 없습니다.