dblinks

本文介绍了Oracle数据库中的DBLink概念及其作用,包括不同类型的DBLink权限、何时使用DBLink、如何为用户分配创建DBLink的权限,以及具体的创建和使用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Oracle数据库链Database links的作用

当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。

数据库中dblink有三种权限:

CREATE DATABASE LINK(所创建的dblink只能是创建者能使用,别的用户使用不了)

CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用)

DROP PUBLIC DATABASE LINK。

二、使用的时机

跨数据库或者跨用户使用时。

三、赋予权限

--查看当前用户是否有创建dblink权限

select * from user_sys_privs t where t.privilege like upper('%link%');

--赋予“创建DBLink”的权限(前提:使用管理员账号登录系统system/admin)

grant create public database link,drop public database link to scott;

--或直接赋予“DBA”角色

grant dba to scott;

四、例子

在本地数据库tnsnames.ora文件中配置了要远程访问的数据库:

create public database link dblink_ins

connect to ins

identified by ayw_ins1

using 'ins';

本地数据库tnsnames.ora文件中没有配置要访问的远程数据库:

create public database link dblink_ins

connect to ins

identified by ayw_ins1

using '(DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST =132.228.213.137)(PORT = 1521))

    (CONNECT_DATA =

      (SERVICE_NAME = ossmob)

   )

  )';

解释:

create database link 链的名称(我们可以自定义)

connect to  要连接的数据库的用户名

identified by 用户的登录密码

using 要使用的数据库名(tnsnames.ora中的配置项)

五、如何使用?

select * from PHY_EQP_UNIT@ossbc_dev_sz; 

解释:

FROM后跟表名,@链名称

转载于:https://www.cnblogs.com/xyhero/p/5c24548053f9ccff574afe82b871784b.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值