Oracle中创建dblink的方法



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

 eu5思考者日记网-束洋洋个人博客

创建dblink一般有两种方式,不过在创建dblink之前用户必须有创建dblink的权限。想知道有关dblink的权限,以sys用户登录到本地数据库:eu5思考者日记网-束洋洋个人博客

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

 eu5思考者日记网-束洋洋个人博客

  1. SYS CREATE DATABASE LINK NO
  2. SYS DROP PUBLIC DATABASE LINK NO
  3. SYS CREATE PUBLIC DATABASE LINK NO

可以看出在数据库中dblink有三种权限eu5思考者日记网-束洋洋个人博客

CREATE DATABASE LINK(所创建的dblink只能是创建者能使用,别的用户使用不了),eu5思考者日记网-束洋洋个人博客

CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用),eu5思考者日记网-束洋洋个人博客

DROP PUBLIC DATABASE LINK。eu5思考者日记网-束洋洋个人博客

 eu5思考者日记网-束洋洋个人博客

在sys用户下,把CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK权限授予给你的用户eu5思考者日记网-束洋洋个人博客

grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott; 

然后以scott用户登录本地数据库eu5思考者日记网-束洋洋个人博客

 eu5思考者日记网-束洋洋个人博客

1.创建dblink的第一种方式,是在本地数据库tnsnames.ora文件中配置了要远程访问的数据库。

create public database link to_bylw connect to scott identified by tiger using 'bylw';

 eu5思考者日记网-束洋洋个人博客

其中to_bylw是你创建的dblink名字,bylw是远程数据库的实例名,scott/tiger是登录到远程数据库的用户/密码。然后在本地数据库中通过dblink访问远程数据库'bylw'scott.tb_test表,sql语句如下所示eu5思考者日记网-束洋洋个人博客

select * from scott.tb_test@to_bylw;

 eu5思考者日记网-束洋洋个人博客

2.创建dblink的第二种方式,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库,

create database link to_test connect to scott identified by tiger using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = bylw)))';  

 eu5思考者日记网-束洋洋个人博客

第二种是把第一种配置在tnsnames.ora文件中的信息,直接放在创建dblink语句后面。第一种情况tnsnames.ora文件中信息如下:eu5思考者日记网-束洋洋个人博客

bylw =  
(DESCRIPTION =  
(ADDRESS_LIST =  
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))  
)  
(CONNECT_DATA =  
(SERVER = DEDICATED)  
(SERVICE_NAME = bylw)  
)  
)

 eu5思考者日记网-束洋洋个人博客

3、删除DBLINK

 eu5思考者日记网-束洋洋个人博客

drop database link to_test1 

 eu5思考者日记网-束洋洋个人博客

 

(转载本站文章请注明作者和出处 思考者日记网|束洋洋个人博客 ,请勿用于任何商业用途)

『访问 思考者日记网404页面 寻找遗失儿童』

告知
  •     本站90%以上文章均属原创,部分转载已加上原作者出处。 如需转载本站文章请您务必保留本站出处!
  •     打广告评论者请自重,请为广大网友提供一个健康干净的网络空间。
  • 感谢主机屋提供网站空间;
  • 感谢万网阿里云提供域名解析;
  • 感谢EmpireCMS提供CMS系统;
  • 感谢bootstrap展示本站前端页面;
  • 感谢Glyphicons Halflings提供字体;
  • 感谢大家一直以来对本站的喜爱,感谢大家!
近期文章 建议与反馈