Oracle使用DBLink跨库查询数据

您所在的位置:网站首页 oracle跨数据库查询数据 Oracle使用DBLink跨库查询数据

Oracle使用DBLink跨库查询数据

2023-09-09 19:13| 来源: 网络整理| 查看: 265

需求:在A数据库查询B数据库的数据 A数据库ip192.168.1.101,B数据库ip192.168.1.102 在A数据库上作业

create database link link名称 connect to B数据库用户名 identified by B数据库用户密码 using 'B数据库ip:端口/实例名';

赋权需要在sys下执行,赋予test01用户创建dblink的权限

grant create public database link,create database link to test01;

创建公共dblink(所有用户都能使用)

create public database link link01 connect to test01 identified by test01 using '192.168.1.102:1521/db02';--创建的dblink #或者这样创建: create public database link link01 connect to test01 identified by test01 using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = db02) ) )';

使用test01用户创建私有dblink(只能创建的用户使用)

create database link link02 connect to test01 identified by test01 using '192.168.1.102:1521/db02';--创建的dblink

dblink使用,在A数据库上查询数据

select * from test01@link01;--查询B数据库test01用户下的test01表 select * from test01.test01@link01;

可以在A数据库上创建视图,当B数据库表更新后,A数据库上的视图也会更新 A数据库上有test01用户

create view test01.test01view as select * from test01@link01; select * from test01.test01view; select id from test01.test01view;

查询已创建的dblink

select * from dba_objects where object_type='DATABASE LINK'; select * from dba_db_links;

删除dblink

drop public database link link01; drop database link link02;--创建dblink的用户下删除


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3