Oracle建立Database link方法
阿新 • • 發佈:2022-03-17
oracle在進行跨庫訪問時,可以通過建立dblink實現,今天就簡單的介紹下如果建立dblink,以及通過dblink完成插入、修改、刪除等操作。
首先了解下環境:在tnsnames.ora中配置兩個資料庫別名:orcl(使用者名稱:test 密碼:654321)、orcl2(使用者名稱:test 密碼:123456),在orcl中 建立database link來訪問orcl2
一、授權
在建立DB link之前,我們需要判斷,登陸的使用者是否具備建立DB link 的許可權,所以我們執行以下的語句(用test使用者登陸orcl):
-- 檢視test使用者是否具備建立database link 許可權select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='TEST';
如果查詢有返回行,則表示具備建立database link許可權,否則,則需要使用sys登陸orcl為test使用者賦予建立許可權
-- 給test使用者授予建立dblink的許可權 grant create public database link to test;
二、建立DBLINK
方式一:通過PL/sql developer圖形化建立
完成後點選“Apply”按鈕即可建立成功。
方式二:通過sqlplus中的sql語句建立
-- 注意一點,如果密碼是數字開頭,用“”括起來
create public database link TESTLINK2 connect to test identified by "123456" USING 'ORCL2'
三、操作
1、我們在orcl2庫中新建一張表並插入資料
2.我們通過database link 在orcl中訪問這張屬於orcl2庫中test使用者的表COMPANY
語法: from 目的庫表名@DBLINK名
select * from company@TESTLINK1
3.我們利用同樣的方式,進行插入,修改,刪除操作,依次看截圖,每一次操作後均執行查詢語句,可對比執行效果
(1)插入
(2)修改
(3)刪除
(4)對於上面的連結字串,還可以建立同義詞代替
-- 建立同義詞
create synonym TESTSYNONYM FOR company@TESTLINK1;
-- 查詢ORCL2中test使用者的表COMPANY
SELECT * FROM TESTSYNONYM order by id
轉載自:https://www.cnblogs.com/zhm1985/p/12106306.html