dbtown-rchwin.jpg 

RAC
로 운영중인 DB 에서 서버 작업 후 CRS 에 의해 DB 가 올라오는데 DB 가 올라온후  DBLINK 안되는 현상이 발생했다.

원인을 알수가 없어 서버 작업때마다 CRS DB 가 올라오면 인스턴스를 다시 내렸다 올렸다 하는 번거로운 작업을 계속 해왔었다.

원인 파악 및 해결방법을 찾기위해 오라클과 함께 다양안 방법으로 해결책을 모색했으나 

원인을 알 수가 없어  꽤 긴시간동안 원인 모를 문제에 고민을 해왔는데 드디어 그 원인 및 해결방법을 찾았다.

 

원인은 필자가 운영하는 사이트의 CRS TNS Default 경로가 아닌 다른경로를 사용하고 있었기 때문이다.

CRS TNS 를 따로 가져가고 있는지 생각이나 했을까.

암튼 오랜시간 동안 끌어오던 문제를 해결하니  정말 감격스럽다.

 

그럼 확인 및 셋팅 방법을 알아보자.

 

1. 각 노드에서 모두 아래와 같이 확인한다.

아무런 값이 안나오면 TNS 설정이 안되어 있는 것이다.

 

[mydb1] >  srvctl getenv insta nce -d mydb -i mydb1
[mydb2] >  srvctl getenv instance -d mydb -i mydb2

 

 

2. 각 노드에서 모두 아래와 같이 실제 TNS 경로를 셋팅해주자
현재 TNS 경로는 /ETC 이다.

 

[mydb1] > srvctl setenv instance -d mydb -i mydb1 -T "TNS_ADMIN=/etc"
[mydb2] > srvctl setenv instance -d mydb -i mydb2 -T "TNS_ADMIN=/etc"

 

 

3. 셋팅후 셋팅 여부를 확인한다.

 

[mydb1] >  srvctl getenv instance -d mydb -i mydb1
 TNS_ADMIN=/etc

[mydb2] >  srvctl getenv instance -d mydb -i mydb2
 TNS_ADMIN=/etc

 

 

4. 셋팅후 반드시 CRS 를 재가동 해야 적용된다.

  dbtown-rchwin.jpg
 이 글의 권한은 dbtown.net 에 있습니다.
자료를 스크랩하실땐 출처를 밝혀주세요 ^^