Oracle中如何使用DBLink

咱們有兩個數據庫a,b,分別有兩個用戶A和B,用戶A但願訪問B的全部表.sql

第一步:在用戶B所在的數據庫中新建一個用戶c,而後將B的全部表的查詢權限賦給c.數據庫

set pages 999;
set heading off;
spool run_grant.sql
select 'grant select on '||owner||'.'||object_name||' to c;'
from dba_objects
where object_type='TABLE' and owner='B';
spool off;
@ run_grantide

第二步:用戶A新建一個dblink_bspa

DROP  PUBLIC  DATABASE  LINK dblink_borm

 create database link dblink_c
  connect to c identified by c的密碼
  using '(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 主機ip)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = 實例名)
    )
  )';ip

而後用下面的語句訪問用戶get

 select * from B.table@dblink_b it

相關文章
相關標籤/搜索