Oracle SID 설정 - Oracle SID seoljeong

IT Knowledge/기타

jdbc Oracle SID,SERVICENAME 설정 방법

Seok. 2021. 5. 24. 16:38

[SID, SERVICENAME]

SID = DB 하나의인스턴스

SERVICENAME = 여러개의인스턴스를모아하나의서버 or 시스템을구성한것

[사용법]

Oracle DB 접근할때,

SERVICENAME사용하여 접근할때는 "/"설정합니다.

Jdbc:oracle:thin:@10.1.1.2:1234/DEVDB

SID사용하여접근할때는 ":"설정합니다.

Jdbc:oracle:thin:@10.1.1.2:1234:DEVDB


[tnsname.ora]

PRODDB = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.2)(PORT = 1234))
    )
    (CONNECT_DATA = 
      (SERVICE_NAME = DEVDB)
    )
  )

PRODDB = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.2)(PORT = 1234))
    )
    (CONNECT_DATA = 
      (SID = DEVDB)
    )
  )

[DB SID / SERVICENAME 확인하는방법]

1. Oracle 데이타베이스명을 확인하는 방법
SELECT NAME, DB_UNIQUE_NAME FROM v$database;

2. Oracle SID를 확인하는 방법
SELECT instance FROM v$thread;

[오류메시지]

SERVICENAME, SID맞지않을 경우아래와같은오류를받을있습니다.

오류 : ORA-12514 TNS:listener does not currently know of service requested in connect descriptor

데이터베이스 질문과 답변

Oracle SID 설정 - Oracle SID seoljeong

sql developer 에서 SID 질문 0 2 3,109

by developer [2016.12.15 11:22:25]


xe는 뭐구 orcl은 뭔가요?

SID가 뭔지 몰라요...

SID를 ex밖에 설정안되는데

검색해보니 이걸

Net manager에서 바꿀수 있다는데

net manager가 없어요...

오라클 11g에요

by 박영민 [2016.12.15 14:56:15]

Oracle SID 설정 - Oracle SID seoljeong

oracle 11g 설치시에 sid를 정해주셨을 겁니다. 따로 변경 하지 않으셨다면 기본적으로 orcl이고 여기서 sid란 db를 식별할 수있는 이름이라고 생각하시면 됩니다.

netmgr은 network를 관리하는 툴인데 혹시 11g EE로 실습중이신가요 SE로 실습중이신가요? 또 윈도우 환경인지 리눅스 환경인지 알려주시며 조금 더 정확한 답변을 받으실수 있습니다.


by 마농 [2016.12.15 15:08:35]

Oracle SID 설정 - Oracle SID seoljeong

오라클 설치할 때 SID 를 지정하는데..
신경 안쓰고 Next 버튼 눌렀다면 기본값으로 지정되구요.
Express Edition 은 xe 인 듯.
Enterprise Edition 은 orcl 인 듯.

댓글등록

SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code(

Oracle SID 설정 - Oracle SID seoljeong
) 버튼을 클릭하여 작성 하시면 됩니다.

로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입

IT/데이터베이스 (Database)

오라클(Oracle) SID 및 service name(DB_NAME) 확인 방법

베베야 2020. 11. 2. 16:32

SID 와 Service name 의 차이는 무엇일까요?

오라클 데이터베이스를 운영하면서 SID와 Service name은 거의 구분하지 않고 사용해 왔습니다. 보통 일반적인 테스트 환경이나 소규모 사이트의 경우 데이타베이스가 하나만으로 구성되어 있고 이런 경우라면 SID와 service name을 구분할 필요가 없기 때문에 데이터베이스 이름(service name)이 SID가 됩니다. 하지만 RAC 로 구성하여 데이타베이스 두개가 동시 가동되는 경우라면 이 SID 가 서로 다를 수 있기 때문에 개념을 인지하고 중복 확인을 진행 하는게 좋을 것 같습니다. ( Service name이 더 큰 개념으로 SID 2개를 합쳐서 Service name으로 서비스가 가능합니다.)

오라클 클라이언트 프로그램 연결 로직 설명입니다.

DB에 접속하는 클라이언트 프로그램의 경우에는 접속하고자 하는 오라클 인스턴스 정보를 필요로 합니다. 프로그램에 접속하는데 필요한 정보로는 서버의IP 오라클SID 접속 프로토콜 같은 정보가 필요합니다. 이 정보를 하나로 묶어서 서비스명으로 대표하고, 이 서비스명으로 클라이언트 프로그램이 서버에 접속하는데 사용합니다. 해당 정보는 클라이언트 서버의 tnsnames.ora 라는 파일에 기재되어 있습니다.

1. 오라클 데이타베이스에 SQLPLUS로 접속합니다.

오라클 클라이언트가 설치된 서버에서 윈도우와 R 키를 눌러 실행창을 띄웁니다. 입력란에 cmd라고 입력하여 명령 프롬프트 창을 활성화합니다. SQLPLUS로 오라클 데이터베이스에 DAB 계정으로 접속을 진행합니다. DBA로 접속하는 명령어 입니다.

SQLPLUS " / as sysdba"

2. 오라클 데이타베이스 'service name'를 확인하는 방법입니다.

SQLPLUS로 DB에 접속한 다음 아래의 명령어를 실행하여 SID

SQL> SELECT NAME, DB_UNIQUE_NAME FROM v$database; 

3. 오라클 SID를 확인하는 방법입니다.

SQL> SELECT instance FROM v$thread;