程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> oracle創建database link遠程連接數據庫

oracle創建database link遠程連接數據庫

編輯:Oracle數據庫基礎
 

數據庫之間的鏈接建立在DATABASE LINK上。要創建一個DB LINK,必須先
在每個數據庫服務器上設置鏈接字符串。

1、 鏈接字符串即服務名,首先在本地配置一個服務名,地址指向遠程的數據庫地址,服務名取為將來你要使用的數據庫鏈名:

2、創建數據庫鏈接,
進入系統管理員SQL>操作符下,運行命令:

SQL>create public database link beijing connect to scott identified by tiger
using 'tobeijing';

則創建了一個以scott用戶和北京數據庫的鏈接beijing,我們查詢北京的scott數據:

SQL>select * from emp@beijing;

這樣就可以把深圳和北京scott用戶的數據做成一個整體來處理。

3、建立同義詞,為了使有關分布式操作更透明,ORACLE數據庫裡有同義詞的對象synonym

SQL>create synonym bjscottemp for emp@beijing;

於是就可以用bjscottemp來替代帶@符號的分布式鏈接操作emp@beijing。

4、查看所有的數據庫鏈接,進入系統管理員SQL>操作符下,運行命令:

SQL>select owner,object_name from dba_objects where object_type='DATABASE LINK';

剛好用到, 取消dblink
3、查看數據庫連接
sql> select owner, db_link from dba_db_links;
ower db_link
public TEST.US.ORACLE.COM

4、刪除數據庫連接
先從第三步中查看數據庫連接,取得其db_link的名稱

sql>drop public database link TEST.US.ORACLE.COM
數據庫連接巳丟棄


比如:在一個數據庫B中訪問數據庫A中的表:

1.在數據庫B中創建數據庫鏈:
CREATE PUBLIC DATABASE LINK 數據庫鏈接名 CONNECT TO 用戶名 identified by 密碼 using '連接說明'
其中,連接說明必須為如下格式:
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.10.201)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME=ORCL)
)
)

2.訪問鏈接數據庫中的對象的語法:
用戶名.數據庫對象@數據庫鏈接名

3.查看所有的數據庫鏈接:
select owner,object_name from dba_objects where object_type='DATABASE LINK';

4.例子:
創建一個數據庫鏈接:
CREATE PUBLIC DATABASE LINK DBL_ORCL CONNECT TO province identified by province_pwd
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.142.10.201)(PORT = 1521))
)
(CONNECT_DATA =
(service_name=ORCL)
)
)';

在B庫中執行下面的語句,訪問A庫中的province.tj_ryxx 表:
select * from province.tj_ryxx@DBL_ORCL;

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved