上次我们介绍了:Oracle 10g透明网关访问SQL Server 2000之配置监听,本文我们接着上次的介绍一下Oracle 10g透明网关访问SQL Server 2000之创建DB Link的过程,接下来就让我们一起来了解一下吧!
创新互联服务项目包括兴安网站建设、兴安网站制作、兴安网页制作以及兴安网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,兴安网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到兴安省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
七、配置tnsname.ora
D:\oracle\product\10.2.0\tg_1\NETWORK\ADMIN目录下配置tnsnames.ora文件,如下:
- UFDATA_002_2009=
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS =
- (PROTOCOL = TCP)(HOST = 192.168.0.233)(PORT = 1521))
- )
- (CONNECT_DATA =
- (SID=UFDATA_002_2009)
- )
- (HS = OK)
- )
留意HS=OK,这主要由于是用于Oracle server调用异构服务器进行处理必须的。
现在使用tnsping测试:
- C:\Documents and Settings\rocky>tnsping ufdata_002_2009 TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 05-6月 - 2009 08:16:30
- Copyright (c) 1997, 2005, Oracle. All rights reserved. 已使用的参数文件:
- D:\oracle\product\10.2.0\tg_1\network\admin\sqlnet .ora 已使用 TNSNAMES 适配器来解析别名
- Attempting to contact
- (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
- (HOST = 192.168.0.233)(PORT = 1521)))
- (CONNECT_DATA = (SID=UFDATA_002_2009)) (HS = OK))
- OK (20 毫秒)
一切正常,由透明网关必须通过其它ORACLE库进行访问其它库(dblink),该步骤可以省略,这里使用tnsping测试。
八、创建访问SQL SERVER访问账号
由于使用DBLINK不能为空密码,为了使用数据安全性,在192.168.0.233服务器创建一个登录账号为oracletosql,密码为oracletosql,并设置权限访问UFDATA_002_2009数据库权限。
九、Oralce 创建DBLINK
- create public database link UFDATA2009 connect to "oracletosql" identified by "oracletosql" using
- '(DESCRIPTION =
- (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.233)(PORT=1 521)) (CONNECT_DATA=(SID=UFDATA_002_2009)
- )
- (HS = ok))';
留意DESCRIPTION的HS与tnsname.ora中的HS=OK。
十、测试连接并使用SQL
SQL>Select * From DUAL@UFDATA2009; SQL> DUMMY ------ X 连接正常
由于ORACLE 数据库采用PL-SQL而SQL SERVER采用T-SQL且异构数据题目,即使用采用标准SQL仍可能无法正常访问。为了使用ORACLE 方便使用SQL SERVER的数据。
现进行以下构建:建立表视图,屏蔽@UFDATA2009 DBLINK连接,重要的是在PLSQL Developer可以使用智能感知功能。
- Create Or Replace View DJ_UFDATA_HR_SHOW
- As
- Select * from hr_v_HR31_show@UFDATA2009
- With Read Only;
构建标准ORACLE访问视图DJ_UFDATA_HR,在构建DJ_UFDATA_HR视图大部分使用智能感知形式得出字段,否则即使用写的字段名和智能感知一样也可能出错(无效字段或索引等等错误信息),且必须使用AS 命别名为ORACLE方便访问。
- Create Or Replace View DJ_UFDATA_HR
- As
- select "HR"."cPsn_Num" As cPsn_Num,
- "HR"."cPsn_Name" As cPsn_Name,
- "HR"."cDept_Name" As cDept_Name,
- "HR"."cDept_num" As cDept_num,
- "HR"."cPsnProperty" As cPsnProperty
- from DJ_UFDATA_HR_SHOW "HR"
- With Read Only;
总结:
在进行配置透明网关访问SQL SERVER时,整个过程的SID(DBLINK命名随意)最好命名与SQL SERVER数据库一致,如UFDATA_002_2009,否则很轻易出现以下错误信息:
- ORA-: error diagnosed by Net8 when connecting to an agent
- Unable to retrieve text of NETWORK/NCR message
- ORA-02063: preceding 2 lines from UFDATA2009
另外在DBLINK访问用户账号最好使用小写且使用""双引号,如" oracletosql" ,这样可以SQL SERVER2000和SQL SERVER2005访问,另外就是ORACLE 方便访问SQL SERVER的SQL程序。
关于Oracle 10g透明网关访问SQL Server 2000的配置过程至此已经全部介绍完毕了,希望本次的介绍能够对您有所收获!
原文出处:http://blog.csdn.net/rockywu/archive/2009/06/04/42 .aspx。
网站标题:Oracle10g透明网关访问SQLServer2000之创建DBLink
分享URL:http://www.shufengxianlan.com/qtweb/news40/53990.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联