SQLServer2008新建数据链接服务器 for Oracle,实现不同数据库源数据的统一操作!

来源:互联网 发布:java多线程源码解析 编辑:程序博客网 时间:2024/05/18 00:39

SQLServer2008新建链接服务器for Oracle

由于最近开发一个关于客户信息查询,其中涉及到多种数据源,分别来自于SQL Server,Oracle以及DB2,而在查询时需要一次性查出结果,其实对于这种多数据源查询,从技术角度上来分析采用数据抽取及ODS数据抽取来完成是比较好的,但考虑到技术成本和工作量的问题,以及数据抽取专业性要求和项目费用等一系列问题,能够采用最简单最便捷的方法,可以通过SQL Server 2005或2008中的链路服务器,建立SQL Server与Oracle或DB2之间的链接来在本地数据库访问其他异步数据库表或视图的数据,关于SQL Server建立与Oracle数据链接服务器的具体操作方法如下所述: 

1、SQLServer服务器端安装Oracle的客户端(由于本文重点讲的是如果在SQL Server中实现与Oracle的数据链接,对于Oracle的客户端安装不再本文范畴,具体客户端如何安装请参考其他相关文档)

确保成功安装好Oracle客户端以后,可通过Oracle Net Configuration进行Net服务名配置,具体配置如下图:

单击Oracle菜单的配置和移植工具下Net Configuration Assistant 出现如下界面:


选择本地Net服务名配置,单击下一步出现如下界面:

选择添加,单击下一步:

添加服务名,单击下一步:


出现上面界面,单击下一步:

添加主机名,单击下一步:

选择是,单击下一步:

单击更改登录,填入用户名和密码,出现如下界面:

单击下一步至配置完成.。

至此Oracle客户端NET服务配置完成,点击左边退出按钮即可。

注:另外也可通过tnsnames.ora文件中来配置要连接的Oracle数据库,具体参数如下(如果通过上述图形化界面完成配置,可查看一下tnsnames.ora文件中的配置信息以确认):

ORCL =(DESCRIPTION =

   (ADDRESS_LIST =

     (ADDRESS = (PROTOCOL = TCP) (HOST = 79.28.16.81)(PORT = 1521))

    )

    (CONNECT_DATA=

     (SERVICE_NAME = DZBL)

    )

  )

2、当完成上述Oracle客户端Net配置以后,便可在SQLServer中建立数据链接服务器了,具体操作为:服务器对象--->链接服务器--->新建链接服务器,如下图所示:

说明:“链接服务器”的名称可以是任意的,访问接口选择Oracle Provider for OLE DB(很多文档中此处选择Microsoft的OLE DB for oracle,但经过证明此处应该选择如上图所示),产品名称写上oracle即可,“数据源”是在tnsnames.ora文件中配置的ORCL,访问接口字符串可不填。

3、在“安全性”选择页中,输入连接Oracle的用户名和密码,如下图所示: 

 4、点击确定后就创建好链接服务器了,就可以使用了,是不是很简单? 5.使用链接服务器(其中XZSP就是创建好的链接服务器名称)

select * from openquery(xzsp, 'select * fromxzsp.t_wf_eng_ins_info');

以上就是图解SQL Server 2005访问Oracle 11g的全部过程,希望本次的介绍能够对您有所收获!

注意事项

1)、如果在SQL Server 2005环境下,使用openquery造成数据库关闭或数据库断开链接长期没有反应,是由于Sql server2005未打SP补丁所致,可通过SELECT SERVERPROPERTY('productlevel')或SELECT@@VERSION或select serverproperty('productversion'),serverproperty('productlevel') , serverproperty('edition')语句来查看其版本,根据版本打上所需要的SP即可.

2)、如果连接不上,报MSDAORA不能提供连接错误的话,需要把11.2.0\dbhome_1\NETWORK\ADMIN\sqlnet.ora文件中的“SQLNET.AUTHENTICATION_SERVICES= (NTS)”注掉。

3)、如果此时无法进行正常查询时,可能是尤其属性设置需要进行调整,在SQL Server Management Studio中设置OracleProbider for OLE DB访问接口来进行属性的设置,具体如下图所示,右健点击OracleProbider for OLE DB访问接口选项(Oracle Probider for OLE DB 驱动安装好后才会有此选项),选择‘属性’,打开访问接口选项窗口 。
在【使用此访问接口的链接服务器】列表中选中上述步骤二创建的链接服务器名,在【访问接口选项】列表中勾选除‘仅零级’,‘禁止即席访问’外的所有选项,如下图所示:
以上即为整个SQL server创建数据链接服务器的全过程,其实最重要的就是使用了SQL Server提供的openQuery这个方法。对于DB2的创建过程与此类似。本文到此结束!
0 0
原创粉丝点击