1、為了建立資料庫連接,需要有PCREATE Database link系統許可權,要與遠端帳號進行串連還需要有CREATE session普通許可權;
2、保證串連的使用者具有訪問被串連資料庫的表或者視圖的許可權。
3、在要建立串連的資料庫 [TNSNAMES.ORA]檔案添加對被串連資料庫的串連字元。
LIMS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.126.6.14)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = LIMS)
)
)
或者用下面第二種建立串連方式。
3、建立資料庫連接文法
CREATE [public] DATABASE LINK 資料庫連接名
CONNECT TO 使用者名稱 IDENTIFIED BY 密碼
USING '資料庫連接字串';
CREATE DATABASE LINK "Oracle_13"
CONNECT TO "TOTALPLANT"
IDENTIFIED BY "********"
USING 'ORACLE_SERVER'
或者:
-- Create database link
create database link TOCCIC
connect to ZTRY identified by ZTRY
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = fengwenwei)(PORT = 1521))
)
(CONNECT_DATA =(SID = ZTRY))
)';
4、一般情況PUBLIC由資料庫管理員來建立;個人使用者可以不加public,是私人的資料庫連接;
5、在設定檔init.ora中,資料庫參數global_name=true時,要求資料庫連接名稱跟遠端資料庫名稱一樣;資料庫參數global_name=false時,資料庫連接名稱可以跟遠端資料庫名稱不一樣;重新啟動資料庫才生效,或者,修改上面的同時執行alter system set global_names=false不需要重新啟動資料庫;
6、在設定檔init.ora中,限制了資料庫連接的數量,預設的並發數是4,由OP_LINKS來限制;
===============================
資料庫全域名稱可以用以下命令查出
SELECT * FROM GLOBAL_NAME;
查詢遠端資料庫裡的表
SELECT …… FROM 表名@資料庫連接名;
查詢資料庫連接
select * from user_db_links;
刪除資料庫連接
DELETE USER_DB_LINKS;
DROP (PUBLIC) DATABASE LINK DBaseLinkToCompany