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 databaselink 随便起个名字
connectto 用户名 identified by密码
using'(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 域名)(PORT = 端口号))
)
(CONNECT_DATA =
(SERVICE_NAME = 数据库实例名称)
)
)';
举例:
-- 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数据库的别名
select * from BASE_TEST@DATABASE_LINK_TEST