您好,登錄后才能下訂單哦!
DBLINK 創建
dblink(Database Link)數據庫鏈接顧名思義就是數據庫的鏈接 ,當我們要跨本地數據庫,訪問另外一個數據庫表中的數據時,本地數據庫中就必須要創建遠程數據庫的dblink,通過dblink本地數據庫可以像訪問本地數據庫一樣訪問遠程數據庫表中的數據。
1. Bdlink分類
類型 | Owner | 描述 |
Private | 創建dblink的user擁有該dblink | 在本地數據庫的特定的schema下建立的databaselink。只有建立該databaselink的schema的session能使用這個databaselink來訪問遠程的數據庫。同時也只有Owner能刪除它自己的privatedatabaselink。 |
Public | Owner是PUBLIC. | Public的databaselink是數據庫級的,本地數據庫中所有的擁有數據庫訪問權限的用戶或pl/sql程序都能使用此databaselink來訪問相應的遠程數據庫。 |
Global | Owner是PUBLIC. | Global的database link是網絡級的,When an Oracle network uses a directory server, the directory server automatically create and manages global database links (as net service names) for every Oracle Database in the network. Users and PL/SQL subprograms in any database can use a global link to access objects in the corresponding remote database.Note: In earlier releases of Oracle Database, a global database link referred to a database link that was registered with an Oracle Names server. The use of an Oracle Names server has been deprecated. In this document, global database links refer to the use of net service names from the directory server. |
2. dblink創建
在創建之前,首先需要知道用戶有沒有創建 dblink 的權限, dblink 的相關權限有三個 2. dblink創建
CREATE DATABASE LINK(所創建的DBLINK只能是創建者自己使用,別的用戶不能使用)
CREATE PUBLIC DATABASE LINK( PUBLIC 表示所創建的DBLINK所有用戶都可以使用)
DROP PUBLIC DATABASE LINK(刪除公共的DBLINK)
首先要確認用戶是否擁有創建dblink的權限,如果沒有的話要將相關權限賦予用戶才可以進行dblink的創建。
創建時需要有需要訪問的數據庫的 TNS 信息和可用的用戶和密碼,創建腳本如下:
--創建DBLINK:
create database link dblink_name
connect to user_name
/*用戶名*/
identified
by
password
/*密碼*/
using
'(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.92.92.92)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
' ;
創建完成后即可在 DBA_DB_LINKS視圖中查詢是否創建完成。也可以使用 drop /* public */ database link dblink_name進行drop刪除;
3. dblink 查詢及創建同義詞
創建完成后即可對目標數據庫進行訪問,如查詢
table_test
表
Select * from table_test@dblink_name;
一般為了使用方便,可以對需要訪問的表設置同義詞:
創建和刪除同義詞:
create or replace synonym table_test for table_test@dblink_name;
設置同義詞后查詢時只需要查詢同義詞即可 .
同義詞也可以使用 drop 直接刪除后重新創建
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。