Oracle Linked Server 설정

◈ DB Link (오라클 원격DB 연결)

현재 접속되어 있는 DB에서 원격으로 다른 곳의 DB에 연결하여 사용한다.
기본적으로 오라클은 dblink를 사용하면 세션 연결이 지속 되기 때문에,
로컬DB의 연결을 끊거나, commit/rollback을 하여 세션을 끊어야 한다.

###############[사용방법] ##################

CREATE [PUBLIC] DATABASE LINK CONNECT TO IDENTIFIED BY USING '';

[예 1] tnsnames에 원격DB 설정이 되어있는 경우

create public database link testlink
connect to scott identified by tiger using 'testdb';

[예 2] tnsnames에 원격DB 설정이 되어있지 않은 경우

create public database link testlink
connect to scott identified by tiger
using '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = TESTDB)))';


[DB Link 전체보기]

select * from all_db_links;

[사용 1] 단순조회

select * from emp@testlink;

[사용 2] 로컬DB와 원격DB의 JOIN

select t.*, s.dname from dept s, emp@testlink t where t.deptno = s.deptno;

[사용 3] 원격 프로시져/함수 호출

[remoteprocedure or function]@linkedservername;