一、dblink(database link)概念
dblink,顧名思義就是資料庫的鏈結。當我們要跨本地資料庫訪問另乙個資料庫中的表的資料時,在本地資料庫中就必須要建立遠端資料庫的dblink,通過該dblink就可以達到訪問遠端資料庫中表中資料的目的。
注意:dblink是單向的連線。
二、dblink中的一些語法
1、檢視庫中已建的dblink:
select*from dba_db_links;
或者
select owner,object_namefrom dba_objects where object_type=
'database link
';
通過以上sql可以查詢出相應的資料庫下已建的dblink;
2、建立dblink:
前提:建立dblink的使用者必須有建立的許可權,可以使用下面語句進行授權:
grantcreate
public
database link,create
database link to myaccount;
dblink建立語法如下:
create[public
]database
link dblinkname
connect
to username identified by
password
using 'connectstring'
說明:1)許可權:如果在create之後不加public,則建立的dblink就不是共用的,就只有建立者自己可以使用,乙個公用的dblink對於資料庫中所有使用者都是可用的。
2)link:當本地global_name=true時,link名必須與遠端資料庫的全域性資料庫名global_name相同,否則會報如下錯誤:
oracle ora-02069: 此操作的 global_names 引數必須設定為 true
3)'connectstring':連線字串,在配置檔案tnsnames.ora中定義遠端資料庫的連線串。
注*若在遠端資料庫的tnsnames.ora中未配置本地資料庫的connectstring,則在本地建立dblink的時候必須使用字串建立,database不可使用別名。
4)username、password:遠端資料庫的使用者名稱,口令。如果不指定,則預設使用當前的使用者名稱和口令登入到遠端資料庫。
3、測試建立的dblink是否可用:
select*from worker@zrhs_link;
若可查出資料,則表明dblink是通的可用~~~
4、刪除dblink:
1)刪除public的dblink:
droppublic
database link link_name;
2)刪除非public的dblink:
dropdatabase link link_name;
注*只有owner自己能刪除自己的非public型別dblink。
oracle dblink的簡單使用
現有兩台資料庫伺服器a和b,現要通過b訪問a中的資料,可以使用dblink實現。使用b中的使用者userb建立dblink 1 檢視use rb是否有建立dblink的許可權 select from user sys privs where privilege like database link ...
oracle dblink建立過程
兩台不同的資料庫伺服器,從一台資料庫伺服器的乙個使用者讀取另一台資料庫伺服器下的某個使用者的資料,這個時候可以使用dblink。其實dblink和資料庫中的view差不多,建dblink的時候需要知道待讀取資料庫的ip位址,ssid以及資料庫使用者名稱和密碼。建立可以採用兩種方式 1 已經配置本地服...
oracle dblink 資料同步
物理上存放於網路的多個oracle資料庫,邏輯上可以看成乙個單個的大資料庫。使用者可以通過網路對異地資料庫中的資料同時進行訪問,而伺服器之間的協同處理對於工作站使用者及應用程式而言是完全透明的,開發人員無需關心網路的鏈結細節 無需關心資料在網路接點中的具體分布情況 也無需關心伺服器之間的協調工作過程...