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