【SQL Server 链接Oracle】 在SQL Server中,链接服务器功能允许用户从SQL Server数据库访问和查询其他异构数据库系统,如Oracle。本文主要介绍如何在SQL Server 2008 R2 64位环境下配置链接服务器,以便访问Oracle Database 11g。 1. **测试环境配置** 操作系统是Windows Server 2008 R2 64位,数据库系统包括SQL Server 2008 R2 64位和Oracle Database 11g的第2版(11.2.0.1.0),并且使用了64位的Oracle 11g客户端。Oracle数据库安装在一台机器上,而SQL Server和Oracle客户端则安装在另一台机器上。 2. **创建SQL Server链接服务器** 链接Oracle有两种主要的访问接口: - **MSDAORA**:由Microsoft OLE DB Provider for Oracle提供,但在SQL Server 2008 R2 64位中默认不包含。不过,可以下载Oracle Data Access Components (ODAC)的64位版本来安装这个接口。然而,由于MSDAORA不支持分布式事务,所以通常不推荐使用。 - **OraOLEDB.Oracle**:这是Oracle自己的OLE DB provider,需要安装Oracle 11g 64位客户端。以下是安装和配置的步骤: - 安装Oracle 11g客户端,根据提供的步骤进行,包括选择“定制”安装,全选组件,配置Oracle Services for MTS以支持分布式事务处理。 - 修改注册表键值,确保MTxOCIOracleOciLib、OracleSqlLib和OracleXaLib指向正确的dll文件。 - 重启计算机后,使用Oracle的Net Manager配置网络服务名,包括指定Oracle实例名、主机名、端口号(默认1521)和服务名。 3. **配置Oracle连接** 在Net Manager中,创建一个新的网络服务名,输入Oracle实例名和服务名,进行TCP/IP配置,并测试连接。确保使用正确的用户名和密码。 4. **问题与注意事项** 使用“MSDAORA”接口时,可能会遇到CLOB和BLOB字段的查询错误,这是因为该接口不完全支持Oracle的数据类型。推荐使用“OraOLEDB.Oracle”接口,因为它对Oracle数据类型的兼容性更好。 5. **分布式事务支持** Oracle Services for MTS是Oracle与Microsoft Transaction Server (MTS)集成的关键,它允许Oracle数据库作为MTS分布式事务的一部分。配置Oracle Services for MTS后,可以使得COM组件在参与MTS交易时通过Oracle进行操作。 配置SQL Server链接服务器访问Oracle需要安装适当的客户端组件,配置网络服务名,并选择适合的访问接口。在实际操作中,应优先考虑使用OraOLEDB.Oracle,因为它能更好地处理Oracle特定的数据类型,并支持分布式事务。
剩余16页未读,继续阅读
- 粉丝: 11
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
评论0