在Oracle本地數(shù)據(jù)庫端執(zhí)行賦權(quán)dbuser帳號
SQL> grant create database link to dbuser;
1.配置本地數(shù)據(jù)庫服務(wù)器的tnsnames.ora文件
$vi $ORACLE_HOME/network/admin/tnsnames.ora
添加如下行,其中DBLINK為連接名(可自定義),HOST和PORT為數(shù)據(jù)庫偵聽的IP及端口,SERVICE_NAME為數(shù)據(jù)庫的SID,
MEDIADBLINK =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = db)
)
)
2.登錄到本地數(shù)據(jù)庫,創(chuàng)建database link
執(zhí)行如下查詢語句,其中MEDIADB為database link名(可自定義),MEDIADBLINK為先前在tnsnames.ora中定義的連接名,
dbuser為用戶名,password為密碼
-- Create database link
create database link MEDIADB
connect to dbuser identified by password
using 'MEDIADBLINK';
注意:這里不會驗證用戶名密碼的正確性
3.使用鏈接的數(shù)據(jù)庫
3.1 查詢、刪除和插入數(shù)據(jù)和操作本地的數(shù)據(jù)庫是一樣的,只不過表名需要寫成“表名@database link名”,如
select * from table_name@MEDIADB ;
3.2 也可以為這個表創(chuàng)建一個同義詞
create synonym aaa for table_name@MEDIADB ;
如下語句的效果和3.1中的一樣
刪除同義詞的語句為
以下是其他網(wǎng)友的補充:
在Oracle本地數(shù)據(jù)庫端執(zhí)行賦權(quán)dbuser帳號
SQL> grant create database link to dbuser;
配置本地數(shù)據(jù)庫服務(wù)器的tnsnames.ora文件
$ vi $ORACLE_HOME/network/admin/tnsnames.ora
增加需要遠(yuǎn)程連接服務(wù)器的連接配置,如:
ORCL_REMOTE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oradb )(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
登錄到本地數(shù)據(jù)庫,創(chuàng)建database link
執(zhí)行如下查詢語句,其中ORCL_LINK為database link名(可自定義),ORCL_REMOTE為先前在tnsnames.ora中定義的連接名,
dbuser為用戶名,password為密碼
create database link ORCL_LINK connect to dbuser identified by password using 'ORCL_REMOTE';
查詢創(chuàng)建database link的2中方式:
1)、執(zhí)行SQL語句。
select * from user_db_links; --用戶 DB Link
select * from dba_db_links; --dba DB Link
select * from v$dblink; --當(dāng)前DB Link
2)、在PL/SQL中,在左邊瀏覽器中點擊database links就可以看到數(shù)據(jù)庫鏈路了。
使用鏈接的數(shù)據(jù)庫
查詢、刪除和插入數(shù)據(jù)和操作本地的數(shù)據(jù)庫是一樣的,只不過表名需要寫成“表名@database link名”,如
select * from table_name@ORCL_LINK
其它:
刪除database link(本例中是ORCL_LINK)
SQL> Drop database link ORCL_LINK;
您可能感興趣的文章:- ORACLE多條件統(tǒng)計查詢的簡單方法
- oracle查詢語句大全(oracle 基本命令大全一)
- 基于Oracle多庫查詢方法(分享)