반응형

Oracle 로고

흔히 다른 시스템 간 데이터를 주고 받을 때 API를 사용하거나, 아니면 ERP와 데이터를 주고 받을 때 DBCO나 RFC 등을 사용한다. 그 중에서도 오라클 DB간에는 DB LINK를 사용하는 경우도 종종 있다. 그래서, 이번 글에서는 오라클에서 DB LINK를 사용하는 방법에 대해 기록한다.


목차

1. DB LINK란?
2. DB LINK의 CRUD
3. DB LINK 사용법
4. DB LINK 권한 CRUD
5. 시노님을 통한 DB LINK 사용법

1. DB LINK란?

다른 데이터베이스를 접속하게 만들어 주는 통로라고 생각하면 된다. 즉, DB 서버가 다른 A와 B가 있을 때, A에서 B에 접속하여 데이터를 조회하거나 가져오는 DML 처리 등을 할 수 있다.

 

2. DB LINK의 CRUD

1) 조회

- DB 전체에 있는 모든 DB LINK를 보고 싶을 때.

SELECT *
  FROM DBA_DB_LINKS

 

- 해당 로그인한 계정의 DB LINK를 보고 싶을 때.(스키마)

SELECT *
  FROM ALL_DB_LINKS

 

2) 생성

CREATE  DATABASE LINK 링크명
CONNECT TO 유저이름 IDENTIFIED BY 패스워드
USING tnsnames.ora에 등록된 이름

 

3) 삭제

DROP DATABASE LINK 링크명
DROP PUBLIC DATABASE LINK 링크명

 

3. DB LINK 사용법

DB LINK 사용법은 다음과 같다. 테이블명@링크명으로 FROM 절에 사용하면 된다.

SELECT *
  FROM 테이블명@링크명

 

4. DB LINK 권한 CRUD

1) DB LINK 생성 권한

- PUBLIC이면 DATABASE 앞에 PUBLIC을 추가하면 된다.

GRANT CREATE (PUBLIC) DATABASE LINK TO 유저 이름

 

2) DB LINK 삭제 권한

- PUBLIC이면 DATABASE 앞에 PUBLIC을 추가하면 된다.

GRANT DROP (PUBLIC) DATABASE LINK TO 유저 이름

 

5. 시노님을 통한 DB LINK 사용법

여기서, 조회를 할 때마다 링크명을 써야 하는 번거로움이 있는데 이 문제를 시노님(SYNONYM)을 사용하여 줄일 수 있다.

CREATE SYNONYM TEMPLINK FOR TEMP@LINK명
SELECT *
  FROM TEMPLINK

 

이렇게 시노님을 생성하여 테이블 조회를 하는 것처럼 사용할 수 있다.

 

1) 조회

- DB 전체에 있는 모든 SYNONYM을 보고 싶을 때.

SELECT *
  FROM DBA_SYNONYMS

 

- 해당 로그인한 계정의 SYNONYM을 보고 싶을 때.(스키마)

  SELECT *
    FROM ALL_SYNONYMS;

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기