Oracle創建dblink,可賦值直接運行

-- 查看用戶是否具備創建database link權限
select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='用戶名';
-- 如果沒有權限,則給用戶授予創建dblink的權限
grant create public database link, drop public database link to 用戶名;
-- 查詢現有dblink
select owner,object_name from dba_objects where object_type='DATABASE LINK';
-- 刪除dblink
drop public database link dnlink名稱;

創建dblink有兩種形式,一種是把描述寫在tnsnames.ora中,一種是把描述寫在創建語句中.

第一種:
在tnsnames.ora添加配置

目標服務器的Oracle服務名 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 主機名或url)(PORT = 端口))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = 目標服務器的Oracle服務名)
    )
  )

創建語句如下:

create public database link dnlink名稱 
connect to 用戶 identified by "密碼" 
using '目標服務器的Oracle服務名';

第二種:

create public database link dnlink名稱 
connect to 用戶 identified by "密碼" 
using 
'  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 主機名或url)(PORT = 端口))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = 目標服務器的Oracle服務名)
    )
  )';
-- 跨庫查詢
select * from 表名@dnlink名稱
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章