dblink的简单使用
oracle在进行跨库访问时,可以通过创建dblink实现。
1.赋予权限
在创建databaselink之前,我们需要判断,登录的用户是否具备创建database link权限
---查看某用户是否具备创建dattabaselink的权限
select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='sunbo';
如果查询有返回行,则表示此用户具备创建databaselink的权限,否则使用sys给用户赋权限
grant create public database link to sunbo;
此时再查询看权限是否已有
2.创建databaselink
1)pl/sql developer 图形化创建
空白的地方写入数据库配置的东西,
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.0.85.5(IP地址) )(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =实例名)
)
)
配置完点击apply即可(假设创建的名称为test1link)
3.操作
假如现在要访问sunbo用户下的一张表empt的数据
select * from empt@test1link
-- 创建同义词
create synonym TESTSYNONYM FOR empt@test1lnk;
那么上面的查询、插入、修改、删除中可直接用WYSYNONYM代替company@TESTLINK1即可,例如查询语句可改成如下方式(插入,修改,删除类似):
-- 查询ORCL2中sunbo用户的表empt SELECT * FROM TESTSYNONYM order by id