본문 바로가기

ORACLE

ORACLE SQLNET.ORA v1.0

ORACLE SQLNET.ORA

 

from

 

1.     SQLNET.ORA

A.     $ORACLE_HOME/network/admin 에 일반적으로 위치

B.     동폴더에 위치한 tnsnames.ora, listener.ora 와 비교했을 때 선택사항에 해당

 

2.     SQLNET.ORA 의 기능

A.     접근제어

tcp.validnode_checking tcp.invited_nodes 옵션으로 접근을 제어할 수 있다.

 

/*+ 추후 여타 기능 추가 */

 

3.     SQLNET.ORA 예제

A.     접근제어예제

환경 : LOCAL PC (192.168.1.101) alias ‘orcl’ 을 통해 vm image 에 접근

          VM IMAGE (192.168.100.1)

 

listener 작동중에 tcp.validnode_checking = yes  sqlnet.ora 에 추가

 

tnsping orcl 결과를 확인

 

<listerner stop / start 를 하지 않았을 때>

정상적인 결과가 나온다.

 

<listerner stop / start 시행 후>

Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ocp.mycorpdomain.com)(PORT=1521)))

TNS-12560: TNS:protocol adapter error

 TNS-00584: Valid node checking configuration error

 

 

Listener failed to start. See the error message(s) above...

 

서버단에서 listener 를 재시작 할 때 위와 같은 에러가 난다.

에러의 내용은 유효노드 체크 리스트가 필요하다는 내용이다.

 

다시 이야기 하면 tcp.validnode_checking tcp.invited_nodes 는 세트이다.

 

tcp.invited_nodes 항목을 추가(vm image가 사용하는 ip가 아닌 주소를 입력)

 

위의 tcp.validnode_checking 항목을 주석처리하고 다시 처음부터 진행하였다.

listener 작동중에

tcp.validnode_checking = yes  sqlnet.ora 에 추가

tcp.invited_nodes = ( 192.168.100.100 ) sqlnet.ora 에 추가

 

listener 에 제어에 앞서 reload 가 아닌 stop start 를 사용한 이유는 변경한

설정이 적용되지 않는 경우가 reload 에서 나타났기 때문이다. (원인불명)

 

<listener stop / start 를 하지 않았을 때>

정상적인 결과가 나온다.

리스너 재시작 텀으로는 5분여 정도여 장시간인 경우에 대해 확답하진 못하지만

listener 에 대한 설정(이 경우엔 sqlnet.ora) 이 적용되는 것은 listener 의 재기동시점이다.

 

<listener stop / start 시행 후>

client 에서 tnsping orcl 을 수행하면 다음과 같은 에러가 난다.

 

TNS-12547: TNS:연결이 끊어졌습니다

 

sqlplus 를 통해 접속을 하면 이런 메시지가 나온다.

 

ERROR:

ORA-12547: TNS:연결이 끊어졌습니다

 

타겟이 되는 서버에 대해 타 서버를 통해 우회접근 (SQL*NET)해야 하는 경우가 있을 수 있는데 보통 이런 서버들은 타겟 서버의 sqlnet.ora 에 설정된 신뢰받는 서버인 경우가 있다.

 

초대받지 않은 서버(invited_nodes) 가 아닌 경우 굳이 그 서버로 접근을 해야 하는 상황이면서 동시에 위와 같은 설정이 타겟서버에 적용되어 있는 경우 설정 후

listener 의 재기동이 필요하다.

 

/*+ 싱글 인스턴스 환경에서 listener failover 에 대한 정보추가 */