[인터돌™] 공부 해보자!! 열심히~~~

[펌] DB Link 생성

2010. 9. 26. 22:24
반응형

먼저 oraA, oraB 서비스네임을 가진 데이타베이스 2개가 있다고 하자.

그리고 oraA 에서 oraB 데이타를 보려고 한다.

간단하게 설명하면 아래의 절차와 같다.

1 oraA 에서 oraB 접속 가능하게 설정한다.
2 oraA
에서 oraB 접속해본다.
3 oraA
에서 db link 만든다.
4
만든 db_link 테이블을 select 해본다.


 

1. oraA

서버상에 상대 오라클 서버(oraB) 등록한다.

% vi $ORACLE_HOME/network/admin/tnsnames.ora 파일에 등록함 (oraA)

 

oraB =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = oraB
ip 또는 host name )(PORT = 포트번호))
    )
    (CONNECT_DATA =
      (SERVICE_NAME 또는 SID = remote SID)

2. 일단 접속해본다.

% sqlplus <userid>/<passwd>@oraB

접속이 되면 빠져나온다.

 

3. DB Link 사용할 오라클 계정(oraA)으로 sqlplus 로그인하고 다음과 같이 DB Link 생성한다.

SQL> create database link <링크로사용할이름> connect to <userid> identified by <passwd> using 'oraB(상대 서비스 네임)';

 

4. 만들어 졌는지 확인

SQL> select * from tab@<링크이름>
oraB의 테이블정보와 일치하면 성공.

 
5. drop Database link
방법

잘못 만들었다면 지우고 다시 만든다.

SQL> drop database link <링크이름>;
 
6. Database link 현황
보기

SQL> select * from all_db_links;

SQL> select * from dba_db_links;

 

7. TNS-03505 에러 발생시

oraA와 oraB의 $ORACLE_HOME/network/admin/sqlnet.ora 비교하여 NAMES.DIRECTORY_PATH= 의 값이 동일한지 확인





생성 권한 : grant CREATE PUBLIC DATABASE LINK, DROP PUBLIC DATABASE LINK to babs;


set pagesize 200
set linesize 300
col OWNER format a20
col DB_LINK format a25
col USERNAME format a20
col HOST format a20
col CREATED format a20



이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band