DBLINK
1.什么是DBLINK
全称database link,数据库连接。主要功能就是连接两个物理的数据库使之成为一个逻辑性的数据库。从而实现数据库的分布式存放。
但是这也带来了一个问题,就是在数据库之间使用会导致SCN号小的一方剧增,二者SCN号相互拉近。
可以用来实现传输表空间。
2.模拟实验
2.1 准备环境:
两台版本相同的数据库,Oracle11g
主机节点在本地,此时scn如下:
SYS@proe>select current_scn from v$database;
CURRENT_SCN
-----------
2200458
目标机位于另一服务器上,scn如下:
SYS@proe>select current_scn from v$database;
CURRENT_SCN
-----------
2171775
#在目标库创建一个测试表用来实验
HR@proe>create table dbtest_link(id int);
Table created.
HR@proe>insert into dbtest_link values (1);
1 row created.
2.2 建立连接:
修改本地节点tnsname.ora文件
[oracle@11g admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_home1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
PROE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = server1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = proe)
)
)
11GTEST = ->添加目标库信息
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 11gtest)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 11gtest)
)
)
创建数据库连接:
SYS@proe>create public database link dblink_11gtest
2 connect to hr identified by hr
3 using '11GTEST';
Database link created.
#查看当前有哪些连接:
SYS@proe>select * from dba_db_links;
OWNER DB_LINK USERNAME HOST CREATED
---------- ------------------------- --------------- -------------------- ---------
PUBLIC DBLINK_11GTEST.ZZL.COM HR 11GTEST 17-JUL-20
2.3 使用数据库连接访问远程数据库:
SYS@proe>select * from hr.dbtest_link@DBLINK_11GTEST
ID
----------
1