登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

飞哥的技术博客

世上无难事,只怕有心人!

 
 
 

日志

 
 
 
 

分布式Oracle的database link --建立数据库间的通迅通道  

2009-08-19 23:48:53|  分类: Oracle |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

分布式Oracle的database link   --建立数据库间的通迅通道

数据库链接定义从一个Oracle数据库到另一个数据库的单行通信通道。
   
    建立链接前要先有到远程数据库的命名服务(连接字符串),就是tnsnames.ora中描述的那个,如远程数据库SID名 ' ora10g   '
    [测试] cmd:tnsping ora10g  
    Attemping to contact(...) OK (810 msec)   //
说明对远程数据库ora10g可访问。
   
   创建数据库链接的语法分为 public链接 和 私有链接;

   public链接创建语法:
    CREATE PUBLIC DATABASE LINK org10g USING 'org10g';
    其中 org10g 必须是远程数据库的全局名(SID), ' org10g ' 就是到远程的连接字符串。

     全局名可以通过远程登陆数据库执行SQL:

SELECT * FROM global_name@ora10g 查看到.

    删除public link :
   drop public database link linkname;    
        
    [注意]登陆名口令就是当前登陆本机的用户名和口令。也就是如果你用的是public链接,那么在远程就要有一个和本机相同的用户/口令才行。如:你以aa/111登录本机,然后执行
    SELECT * FROM bb@ora10g;
    那么对远程数据bb的访问用户为aa口令为11
    也就是在本机和远程机上都有用户aa口令都为11才能执行成功!
    
    私有链接创建语法:
    CREATE DATABASE LINK ora10g CONNECT TO system IDENTIFIED BY aa;
    这就建立了system的私有链接。
    私有链接和public链接的差别就是登录名口令的限制
    即你不管用什么用户登录本机,执行
    SELECT * FROM bb@ora10g;
    访问远程机数据bb的用户和口令都为system/aa
    
    建好的数据链接放在系统表SYS.link$表中

    删除私有 link :
   drop database link linkname;   

      或者: 当然,直接删除SYS.link$表中的记录一样可行。




引文来源  分布式Oracle的database link --建立数据库间的通迅通道_人生驿站
  评论这张
 
阅读(498)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018