oracle中dblink创建方式

  1. 通过create创建DBLINK

 

createpublicdatabaselink①dblinknameconnectto②"DSUSER"  identifiedby③"qwer123!"

 using④'(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL =TCP)(HOST = ⑤109.112.56.181)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME =⑥tchniiss )))'

 

同DDL语句创建一个DBLINK,1是dblink的名字 ,期中2、3分别是用户名,密码(注意:用户名,密码必须用双引号,否则会报,ORA-00987),4是对连接信息的描述(5是服务器的IP,6数据库实例名),

对于using的后面的描述是可以省去的,通过PL/SQL在创建的时候是可以省去的

 

 createpublicdatabaselink①dblinknameconnectto②"DSUSER"  identifiedby③"qwer123!"

 using④'⑤109.112.56.181/⑥tchniiss '

省去端口描述,只是用IP/实例

2.


图形界面创建

选择public,owner初就会出出现在public

Name:dblink的名字

Usename:to数据库的用户名

Password:数据库密码

Database:可以上面using后面的任意一种方式。都识别

 

权限:

Private,创建的时候,没有任何关键字,这个dblink只能是创建的用户使用,也只能被创建的用户删除。

Public创建的时候加public关键字,可以被整个数据库所有的用户使用,谁都可以删除,删除的必须加public

Drop public  databaselinkdbname;

Shared指是授权的session才能访问,避免过多的连接造成远程服务器崩溃,当使用shared后,本地连接就会断开(减少远程数据库压力)。

Dblink的引用:user.table|view@dblink

CREATESYNONYM worker_syn FOR worker@zrhs_link;

创建远程视图:本质上还是dblink表,看到的只有视图

CREATEVIEW worker AS SELECT * FROM worker@zrhs_link where…;

公有dblink使用public修饰关键字。在create和drop的时候都需要使用public关键字。

公有dblink对所有人开放,在该dblink之上创建的同义词也会随之对所有人开放。(测试并确认,不过测试是在一个实例多个用户之间进行)

私有dblink只有创建者可以访问,其上的同义词不能被其他用户访问。需为用户创建视图,并将视图授权给所需用户后,用户才可访问该视图。

另外,不能将带有dblink的同义词直接授权给用户。否则报错,其等价于:

grant select on table1@user1 to user2 *

ERROR at line 1:

ORA-02021: DDL operations are not allowed on a remotedatabase

2.创建dblink时,可以使用连接字符串(与tnsname.ora中的),效率较高。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值