oracle DBLINK 创建与相关操作

首先说说 dblink 是什么?  

dblink 是oracle 数据库中用来跨库访问数据的一种方式.  可以不用连接到另外的数据库查询操作, 只要网络通畅即可.

1.查看dblink

select owner,object_name from dba_objects where object_type='DATABASE LINK'   

或者:    select * from dba_db_links;  

2.创建dblink

前提:   创建dblink的用户有对应的数据库权限

        create public database link 或者create database link 

        可以用:  grant create public database link,create database link to myAccount;  

3.授权操作.

create public database link dblinkname connect to username identified by password

using '(DESCRIPTION =

(ADDRESS_LIST =

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

)

(CONNECT_DATA =

(SERVICE_NAME =servicename)

)

)';

如果在create之后不加public,则创建的dblink就不是公共的,就只有创建者可以使用了.

补充:如何确定数据库的servicename:

    1.在sqlplus中使用

      show parameter[s] service_names;  

  注意parameter和parameters都可以

    2.使用

         select name,value from v$parameter where name='service_names'  

    3.  使用db link

      例如,在本机数据库上创建了一个scott_rmthost的public dblink(使用远程主机的scott用户连接),则用sqlplus连接到本机数据库,执行select * from scott.emp@scott_rmthot即可以将远程数据库上的scott用户下的emp表中的数据获取到.

    也可以在本地建一个同义词来指向scott.emp@scott_rmthost,这样取值就方便多了.4.删除

    注意:用户有create public database link 或者create database link 权限.

     drop public database link dblinkname;

     注意: dblink 是共享的, 就是访问相同的数据库  只需要创建一次即可, 不需要创建多个. 避免发生异常错误, 导致正常任务无法识别报错.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值