본문 바로가기
마린일병의 열정이야기/Infra&Solution

[DB][Oracle] SID? SERVICE NAME?

by 마린일병 2019. 9. 5.
728x90
반응형

1. SID? Service Name?

쉽게 설명하자면... 

SID -> 독자적인 서비스가 가는한 DB 인스턴스 하나

Service Name -> 여러 인스턴스를 묶어 하나의 서비스 단위로 구성한 것

 

2. Why?

로컬의 개발이나 테스트 환경이야 DB 인스턴스 하나면 떡을 치지만 운영환경의 경우 통상적으로 Oracle RAC 구성을 통한 HA 구성을 하게 마련인데 SID를 이용한 접근은 인스턴스 별로 다른 SID를 가지기 때문에 접속편의와 연속성을 보장하기 위해 Service Name을 사용하는게 효과적임

 

3. 무슨 차이가 있을까? 

JDBC를 사용해서 Oracle에 접근할때 SID와 Service Name은 연결 url을 구성할때 약간의 차이가 있는데

SID
jdbc:oracle:thin:@//hostname:port:sid -> SID는 ':'사용

Service Name
jdbc:oracle:thin:@//hostname:port/serviceName    -> Service Name은 '/' 사용

 

4. 내 SID와 Service Name을 확인하는 방법은?

요렇게...

 

5. TIP

기업환경에서 보통 DR 구성을 하는 경우 DR 전환시 IP는 무조건 넘어가고, 다른 구성 역시 동일하지만 SID는 다르다... 통상 Service Name의 경우 실제 운영서버랑 동일하게 구성하기 때문에 Service Name을 사용하는 경우 DR전환시에도 별다른 중간과정 없이 바로 붙이는게 가능하다 

 

※ [마린일병의 세상 사는 이야기...!]에서 이전해옴

728x90

댓글