[转]Oracle 创建 DBLink 的方法

摘要:
可以使用以下命令找到数据库的全局名称--select*from-global_name;将数据库链接到测试;使用“”创建数据库链接到dbzy_20140903,该链接由dbzy_2020140903标识;3.查询数据:--查询、删除和插入数据与操作本地数据库相同,只是表名需要写为“table name@dblink server”。选择xxxFROM表名@数据库链接名;4.删除DBLinkdrop/*public*/databaselinkdblink1;5.创建和删除同义词creatoreplace同义词,即表名的同义词名称;用户表名称的同义词名称;表名@数据库链接名的Creatorreplace同义词同义词名称;drop同义词名称;6.创建和删除视图createor替换视图视图名称为;Dropview视图名称;7.注意:创建DBLink很简单,但在使用过程中后台有一个锁。要查看此锁,可以在控制台中查看或查询数据库。

http://blog.csdn.net/davidhsing/article/details/6408770

1、如果需要创建全局 DBLink,则需要先确定用户有创建 dblink 的权限:

select * from user_sys_privs where privilege like upper('%DATABASE LINK%');   

如果没有,则需要使用 sysdba 角色给用户赋权:

  1. grant create public database link to dbusername; 

2、使用该用户登录 PL/SQL,使用命令:

  1. -- 第一种方法:要求数据库服务器 A 上 tnsnames.ora 中有 数据库 B 的映射 
  2. -- -- create database link 数据库链接名 connect to 用户名 identified by 密码 using '本地配置的数据的实例名'; 

采用图形配置界面则如下所示:

[转]Oracle 创建 DBLink 的方法第1张

  1. -- 第二种方法:直接配置 
  2. -- 如果创建全局 dblink,必须使用 systm 或 sys 用户,在 database 前加 public。 
  3. create /* public */ database link dblink1 
  4.   connect to dbusername identified by dbpassword 
  5.   using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))'; 
  6.  
  7. -- 数据库参数 global_name=true 时要求数据库链接名称跟远端数据库名称一样。数据库全局名称可以用以下命令查出 
  8. -- select * from global_name; 

drop database link to_test;

create database link to_test connect to dbzy_20140903 identified by dbzy_20140903   using '(DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.111.222)(PORT = 1521))     )     (CONNECT_DATA =      (server=dedicated)       (SERVICE_NAME = orcl)     ))';

3、查询数据:

  1. -- 查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@dblink服务器”而已。 
  2. select xxx FROM 表名@数据库链接名; 

4、删除 DBLink

  1. drop /* public */ database link dblink1; 

5、创建和删除同义词

  1. create or replace synonym 同义词名 for 表名; 
  2. create or replace synonym 同义词名 for 用户.表名; 
  3. create or replace synonym 同义词名 for 表名@数据库链接名; 
  4. drop synonym 同义词名; 

6、创建和删除视图

  1. create or replace view 视图名 as (select 字段 from 用户.表名@dblink1); 
  2. drop view 视图名;  

7、注意:

创建 DBLink 很简单,但是在使用中后台却出现锁,查看这个锁的方法可以去 console 中看到或者查询数据库。每次使用dblink查询的时候,均会与远程数据库创建一个连接,dblink 应该不会自动释放这个连接,如果是大量使用 dblink 查询,会造成 web 项目的连接数不够,导致系统无法正常运行,导致系统无正常运行。

参考文章:

1、http://www.cnblogs.com/sishierfei/archive/2010/12/20/1911606.html

2、http://www.51testing.com/?uid-194762-action-viewspace-itemid-90513

3、http://hi.baidu.com/jjpx/blog/item/a583742451884f124c088dbe.html

免责声明:文章转载自《[转]Oracle 创建 DBLink 的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇UVA 11404 简单LCS模型DP 字典序比较python模块整理7zipfile模块下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【ArcGIS 10.2新特性】ArcGIS 10.2将PostgreSQL原生数据发布为要素服务

1、ArcGIS 10.2支持原生数据发布为要素服    有没有将自己已有的空间数据发布为要素服务的需求?有没有将非Esri空间数据类型的数据作为服务在Web端展示的需求?    ArcGIS 10.2 for Server增加了这方面的能力,ArcGIS 10.2 for Server 可以将原生数据库中的空间数据发布为要素服务。    想必都知道现在的...

DBImport v3.0 中文版发布:支持各大数据库数据互导(IT人员必备工具)

事隔一年,做为进军海外的CYQ.DBImport数据库工具,终于发布新版本:DBImport V3.0。 为了广大国内同胞用的舒心,本次发布中文版本(V1、V2版本为英文版),同时去掉了个人商标CYQ前缀。 另外,本版本内置未面世版CYQ.Data V5内核。 DBImport 适合人群:IT人士、站长、及和数据库打交首的相关相关人员。 只要你是开发...

Oracle SQL外连接

SQL提供了多种类型的连接方式,它们之间的区别在于:从相互交叠的不同数据集合中选择用于连接的行时所采用的方法不同。连接类型        定义内连接           只连接匹配的行左外连接        包含左边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表中全部匹配的行右外连接        包含右边表的全部行(不管左边的表中是否存在...

Oracle 异常处理

1、什么是异常 在PL/SQL中的一个警告或错误的情形都可被称为异常。包括编译时错误(PLS)和运行时错误(ORA)。一个异常通常包含一个错误代码和错误文本,分别指示异常的编号和具体错误信息。 异常情况处理(EXCEPTION)是用来处理正常执行过程中未预料的事件,程序块的异常处理预定义的错误和自定义错误,由于PL/SQL程序块一旦产生异常而没有指出如何处...

基于datax的数据同步平台

一、需求 由于公司各个部门对业务数据的需求,比如进行数据分析、报表展示等等,且公司没有相应的系统、数据仓库满足这些需求,最原始的办法就是把数据提取出来生成excel表发给各个部门,这个功能已经由脚本转成了平台,交给了DBA使用,而有些数据分析部门,则需要运维把生产库的数据同步到他们自己的库,并且需要对数据进行脱敏,比如客户的身份证号、手机号等等,且数据来...

MySQL高可用集群方案

一、Mysql高可用解决方案 方案一:共享存储 一般共享存储采用比较多的是 SAN/NAS 方案。 方案二:操作系统实时数据块复制 这个方案的典型场景是 DRBD,DRBD架构(MySQL+DRBD+Heartbeat) 方案三:主从复制架构 主从复制(一主多从) MMM架构(双主多从) MHA架构(多主多从) 方案四:数据库高可用架构 这种方式比较经典的...