oracle에서dblink를 만드는 두 가지 방법

2119 단어
사용자가 로컬 데이터베이스를 뛰어넘어 다른 데이터베이스 테이블의 데이터를 방문할 때 로컬 데이터베이스에는 원격 데이터베이스의dblink를 만들어야 한다. dblink 로컬 데이터베이스를 통해 로컬 데이터베이스에 접근하는 것처럼 원격 데이터베이스 테이블의 데이터를 접근할 수 있다.다음은 로컬 데이터베이스에dblink를 만드는 방법을 소개합니다.
dblink를 만드는 데는 일반적으로 두 가지 방법이 있지만, dblink를 만들기 전에 사용자는 반드시 dblink를 만드는 권한이 있어야 합니다.dblink에 대한 권한을 알고 싶으면 sys 사용자로 로컬 데이터베이스에 로그인하십시오:
  select * from user_sys_privs t
  where t.privilege like upper('%link%');
  1 SYS CREATE DATABASE LINK NO
  2 SYS DROP PUBLIC DATABASE LINK NO
  3 SYS CREATE PUBLIC DATABASE LINK NO

데이터베이스에서 dblink에는 세 가지 권한이 있음을 알 수 있습니다. CREATE DATABASE LINK(작성된 dblink는 작성자만 사용할 수 있고 다른 사용자는 사용할 수 없음), CREATE PUBLIC DATABASE LINK(public은 작성된 dblink는 모든 사용자가 사용할 수 있음을 표시), DROP PUBLIC DATABASE LINK입니다.
sys 사용자 아래에서 CREATE PUBLIC DATABASE LINK, DROP PUBLIC DATABASE LINK 권한을 당신에게 수여하는 사용자
  grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;
그리고 scott 사용자로 로컬 데이터베이스에 로그인합니다
  1.dblink를 만드는 첫 번째 방법은 로컬 데이터베이스 tnsnames입니다.ora 파일에 원격 접근할 데이터베이스가 설정되어 있습니다.
  create public database link
  to_bylw connect to scott identified by tiger using 'bylw';
그중tobylw는 당신이 만든dblink 이름입니다.bylw는 원격 데이터베이스의 실례 이름입니다.scott/tiger는 원격 데이터베이스에 로그인한 사용자/비밀번호입니다.그리고 로컬 데이터베이스에서dblink를 통해 원격 데이터베이스'bylw'에서 scott에 접근합니다.tb_test표, sql문장은 다음과 같다.
  select * from scott.tb_test@to_bylw;
  2.dblink를 만드는 두 번째 방식은 로컬 데이터베이스 tnsnames입니다.ora 파일에 접근할 원격 데이터베이스가 설정되어 있지 않습니다
  create database link to_test
  connect to scott identified by tiger
  using '(DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
  )
  (CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bylw)
  )
  )';

두 번째는 첫 번째를 tnsnames에 설정하는 것입니다.ora 파일의 정보는 dblink 문장을 만드는 뒤에 있습니다.첫 번째 상황 tnsnames.ora 파일의 정보는 다음과 같습니다.
  bylw =
  (DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
  )
  (CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bylw)
  )
  )

좋은 웹페이지 즐겨찾기