2014년 1월 11일 토요일

Oracle TNS 및 TNS Listener(오라클교육, 오라클리스너, 오라클 TNS Listener)

Oracle TNS 및 TNS Listener(오라클교육, 오라클리스너, 오라클 TNS Listener)


TNS(Transparent Network Substrate)
------------------------------------
TNS란 ORACLE社에서 개발한 Network 기술로써 서로 다른 Network 구성을 가지고 있는 Client/Server 또는 Server/Server 간에도 Data의 전송을 가능하게 해주는 기술을 말한다.

--------------
TNS Listener
--------------
TNS 기술을 사용하는 product인 SQL*NET V2가 사용하는 Listener를 TNS Listener라고 부르며 SQL*NET Client로부터 Connection을 받아 Server Process를 할당하는 역할을 한다. 다음의 2개의 다른 Community를 갖는 Network 구성의 경우에 TNS Listener가 어떠한 역할을 하는지를 보여준다.

1. Client쪽에서 Connection을 위해 요청한 request는 해당 TNS community를 통해 Server에 도달한다.
2. TNS community를 통해 Server에 도달한 request를 TNS Listener는 인식하게 된다.
3. TNS Listener는 connection에 Dedicated server process를 할당 할 것이고 MTS(Multi Threaded Server)의 경우에는 Shared dispatcher process의 address를 할당하여 Client가 요청한 사항에 대한 작업을 수행한다.


------------------
SQL*NET V2인 경우
------------------
Process name 
tnslsnr
ps -ef|grep tnslsnr 로 Process가 살아 있는지 확인할 수 있다.

LISTENER 상태보기
lsnrctl stat listener_name으로 Listener가 살아 있는지 확인 할 수 있다.
Ex) lsnrctl stat LISTENER
만약 lsnrctl stat listener_name에서 Listener가 살아 있지 않은 데 ps -ef|grep tnslsnr로 Process가 살아 있으면 다음과 같이 한다.
lsnrctl stop listener_name으로 Listener를 Shutdown시킨다.
Listener가 Shutdown되었음에도 Process(tnslsnr)가 살아 있다면 kill -9 tnslsnr을 이용해 강제로 Process를 Kill시킨다. lsnrctl start listener_name로 다시 Listener를 Startup 한다.

LISTENER 구동시키기
lsnrctl start listener_name로 Listener를 구동시킨다.

LISTENER 죽이기
lsnrctl stop listener_name으로 Listener를 죽인다.




댓글 없음:

댓글 쓰기