본문 바로가기

Oracle/admin

2개의 DATABASE 사용 시 LISTENER SETUP 방법

펌 > https://community.oracle.com/thread/468751?start=0&tstart=0

 


1)LISTENER 하나를 이용하는 방법

<$ORACLE_HOME/network/admin/listener.ora>

LISTENER =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = tcp)
(HOST = 152.69.30.100)
(PORT = 1521)
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PMS)
(ORACLE_HOME=/oracle2/ora73/app/oracle/product/7.3.2)
)
(SID_DESC =
(SID_NAME = VOY)
(ORACLE_HOME=/oracle2/ora73/app/oracle/product/7.3.2)
)
)


< $ORACLE_HOME/network/admin/tnsnames.ora>

PMS =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = tcp)
(host = 152.68.1.29)
(port = 1521)
)
(CONNECT_DATA =
(SID = PMS))
)

VOY =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = tcp)
(host = 152.68.1.29)
(port = 1521)
)
(CONNECT_DATA =
(SID = VOY))
)

< initPMS.ora의 mts 파라미터>

mts_dispatchers="tcp,3"
mts_max_dispatchers=10
mts_servers=2
mts_max_servers=10
mts_service=PMS
mts_listener_address="(ADDRESS=(PROTOCOL=tcp)(PORT=1521)(HOST=152.68.30.100))"

< initVOY.ora의 mts 파라미터>

mts_dispatchers="tcp,3"
mts_max_dispatchers=10
mts_servers=2
mts_max_servers=10
mts_service=VOY
mts_listener_address="(ADDRESS=(PROTOCOL=tcp)(PORT=1521)(HOST=152.68.30.100))"

이렇게 세팅한 다음

$lsnrctl start

하면 됩니다.

그리고 CLIENT에서 접속하게 된다면 위에서 만든 tnsnames.ora 를 client
에서 가져다가 사용하시면 됩니다. (CLIENT의 $ORACLE_HOME/network/admin
에 copy 하면됨). 혹시 CLIENT에서 접속이 안되면 CLIENT의
$ORACLE_HOME/network/admim에 있는 sqlnet.ora 화일을 삭제하고 테스트해
보시기 바랍니다.


2)LISTENER를 DB마다 각자 이용하는 방법

이 경우는 LISTENER이름을 두개로 하고 각각 다른 포트를 쓰게 됩니다.
1521과 1522를 사용하는 예로 하겠습니다.

< $ORACLE_HOME/network/admin/listener.ora>

LISTENER_PMS =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = tcp)
(HOST = 152.69.30.100)
(PORT = 1521)
)
)

LISTENER_VOY =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = tcp)
(HOST = 152.69.30.100)
(PORT = 1522)
)
)

SID_LIST_LISTENER_PMS =
(SID_LIST =
(SID_DESC =
(SID_NAME = PMS)
(ORACLE_HOME=/oracle2/ora73/app/oracle/product/7.3.2)
)
)

SID_LIST_LISTENER_VOY =
(SID_LIST =
(SID_DESC =
(SID_NAME = VOY)
(ORACLE_HOME=/oracle2/ora73/app/oracle/product/7.3.2)
)
)

< $ORACLE_HOME/network/admin/tnsnames.ora>

PMS =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = tcp)
(host = 152.68.1.29)
(port = 1521)
)
(CONNECT_DATA =
(SID = PMS))
)

VOY =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = tcp)
(host = 152.68.1.29)
(port = 1522)
)
(CONNECT_DATA =
(SID = VOY))
)

< initPMS.ora의 mts 파라미터>

mts_dispatchers="tcp,3"
mts_max_dispatchers=10
mts_servers=2
mts_max_servers=10
mts_service=PMS
mts_listener_address="(ADDRESS=(PROTOCOL=tcp)(PORT=1521)(HOST=152.68.30.100))"

< initVOY.ora의 mts 파라미터>

mts_dispatchers="tcp,3"
mts_max_dispatchers=10
mts_servers=2
mts_max_servers=10
mts_service=VOY
mts_listener_address="(ADDRESS=(PROTOCOL=tcp)(PORT=1522)(HOST=152.68.30.100))"

이렇게 세팅한 다음

$lsnrctl start LISTENER_PMS
$lsnrctl start LISTENER_VOY

하면 됩니다.