Oracle 跨庫查詢表數據(不同的數據庫間建立連接)
Created by Marydon on 2018-04-14 12:02
1.情景展示
當需要從A庫去訪問B庫中的數據時,就需要將這兩個庫連接起來;
兩個數據庫如何實現互聯互通,在oracle中,可以通過建立DBLINK實現。
2.解決方案
2018/12/05
第一步:創建DBLINK
前提:要建立通信的2個數據庫的IP必須實現可以相互訪問。
方式一:使用plsql實現
選中“database link” -->右鍵-->新建
名稱:創建的DBLINK的名稱,通過它來完成B庫的訪問;
配置連接B庫所需的用戶名、密碼和數據庫地址
方式二:通過sql實現
方法一:推薦使用
create database link DATABASE_LINK_TEST--數據庫別名 connect to DB_TEST identified by DB_TEST--分別對應用戶名和密碼 using '127.0.0.1:1521/ORCL';--域名:端口號/數據庫實例
方法二:
模板
create database link 隨便起個名字 connect to 用戶名 identified by 密碼 using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 域名)(PORT = 端口號)) ) (CONNECT_DATA = (SERVICE_NAME = 數據庫實例名稱) ) )';
舉例:
1
2
3
4
5
6
7
8
9
10
11
|
-- Create database link
create
database
link DATABASE_LINK_TEST
--自定義要連接的數據庫名稱
connect
to
username identified
by
password
--用戶名和密碼
using
'(DESCRIPTION = --數據庫連接:域名,端口號,數據庫實例
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)'
;
|
第二步:調用方式
B庫表名@連接的B數據庫的別名
1
|
select
*
from
BASE_TEST@DATABASE_LINK_TEST
|