Oracle跨資料庫查詢(database link方式)
通過建立database link實現Oracle跨資料庫查詢的方法
在Oracle本機資料庫端執行賦權dbuser帳號
SQL> grant create database link to dbuser;
配置本機資料庫伺服器的tnsnames.ora檔案
$ vi $ORACLE_HOME/network/admin/tnsnames.ora
增加需要遠端連線伺服器的串連配置,如:
ORCL_REMOTE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oradb )(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
登入到本機資料庫,建立database link
執行如下查詢語句,其中ORCL_LINK為database link名(可自訂),ORCL_REMOTE為先前在tnsnames.ora中定義的串連名,
dbuser為使用者名稱,password為密碼
create database link ORCL_LINK connect to dbuser identified by password using 'ORCL_REMOTE';
查詢建立database link的2中方式:
1)、執行SQL語句。
select * from user_db_links; --使用者 DB Link
select * from dba_db_links; --dba DB Link
select * from v$dblink; --當前DB Link
2)、在PL/SQL中,在左邊瀏覽器中點擊database links就可以看到資料庫鏈路了。
使用連結的資料庫
查詢、刪除和插入資料和操作本地的資料庫是一樣的,只不過表名需要寫成“表名@database link名”,如
select * from table_name@ORCL_LINK
其它:
刪除database link(本例中是ORCL_LINK)
SQL> Drop database link ORCL_LINK;
在CentOS 6.4下安裝Oracle 11gR2(x64)
Oracle 11gR2 在VMWare虛擬機器中安裝步驟
Debian 下 安裝 Oracle 11g XE R2