본문 바로가기
IT/Database

DB Link 에 대해서(23.07.24)

by 성준하이 2023. 7. 25.
반응형
데이터베이스에서 다른 데이터베이스를 접근가능한 링크
"FROM 테이블명@DB링크" 형식으로 사용
다른 DB에 특정 유저에 대한 링크를 만들어 해당 스키마에 테이블들을 접근하는 기술

 

자바에서의 접근제어자와 비슷하게 public 과 private 으로 접근 권한을 부여 하고 
- public > 모든 유저가 사용가능한 공용링크를 만들때 지정

- private > 특정 유저만 사용가능 한 DB링크를 만들때 지정 

 

단순 개발을 할 경우에는 여러 데이터베이스에 접근을 하면 되지만, 특정 상황에 따라나 기업 권한 등 제한된 환경에서 확장이 필요할때, 다른 서버의 DB를 링크를 통해 접속하게 해주므로 확장성을 가진다.

 

DB 링크 CRUD문 

DB 링크 조회

  • SELECT * FROM DBA_DB_LINKS

 

생성 

TNS에 해당 DB가 서로 명시되어 있어야하며, 통신을 위해 각각 서버에 1521 포트개방은 필수이다.

  • CREATE  DATABASE LINK [링크로 사용할 명칭] 
    CONNECT TO [원격지 로그인 유저명] 
    IDENTIFIED BY "[원격지 유저 패스워드]" 
    USING [로컬서버의 tnsnames.ora에 설정된 접속할 매칭이름]

 

삭제

  • DROP DATABASE LINK 링크명;
  • DROP PUBLIC DATABASE LINK 링크명;

 

다른 데이터베이스에서 사용할 경우엔 아래처럼 사용이 가능하다.

SELECT * FORM 테이블명@링크명;

여기서 링크명은 위에 create에 만들었던 이름을 사용한다.

반응형

댓글