SQL Server 2008 R2 x64连接Oracle解决方案

环境

操作系统环境: Windos Server 2008 R2 64bit

       所需 软件版本: SQLSERVER 2008 64 位

                              Oracle client 32 位和 Oracle client 64 位

二:问题

         用 Oracle 的客户端去连接远程 Oracle 数据库可以,但用 SQL SERVER 去连接时,总是报一个 OraOLEDB.Oracle.1 没有提供的 错误。

 

三:解决方法

         0 、先去 Oracle 官网上下载 32 位和 64 位的客户端。地址如下:

         http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html    

         1 、安装 32 位的 Oracle 客户端,存放路径 C:/Oracle/product/11.2.0/client_32

    2、 安装 64 位的 Oracle 客户端,存放路径 C:/Oracle/product/11.2.0/client_64

这时会报一个内存不足的警告,忽略掉。

    3 、找到注册表项HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC/MTxOCI

OracleOciLib 值改为oci.dll 、OracleSqlLib 值改为orasql11.dll 、OracleXaLib 值改为oraclient11.dll 。

        4 、HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/MSDTC/MTxOCI 对它做同样的修改

 

第3、4步不处理可能也可以解决该问题。

 

 

四、原文

   Download 32 and 64-bit clients from http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html (click "see all" to see different versions, otherwise, you'll be downloading the complete Oracle program. Your downloads should be about 600 meg each)
Run 32-Bit install on the SQL Server. Select "Custom"
For Oracle Base, enter "C:/Oracle"
For "Software Location", change to C:/Oracle/product/11.2.0/client_32
Choose the following components:
SQL*Plus
Oracle Call Interface (OCI)
Oracle Net
Oracle Services for Microsoft Transaction Server
Oracle Administration Assistant for Windows
Oracle Provider for OLE DB
Oracle Data Provider for .NET
Oracle Providers for ASP.NET
Repeat above steps with the 64-bit installer. HOWEVER, change the "Software Location" to C:/Oracle/product/11.2.0/client_64
I got a memory error at this point, but chose to ignore it since I know there is enough
Ignore the error "OracleMTSRecoveryService already exists"
Now that the install is done, just need to tweak a few things.

Make registry changes to HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC/MTxOCI
OracleOciLib should be oci.dll
OracleSqlLib should be orasql11.dll
OracleXaLib should be oraclient11.dll
Make same registry changes to HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/MSDTC/MTxOCI
Create or copy a new tnanames.ora in C:/Oracle/product/11.2.0/client_32 /network/admin
Create or copy a new tnanames.ora in C:/Oracle/product/11.2.0/client_64 /network/admin
Reboot!
You should now see OraOLEDB.Oracle as a provider under Linked Servers/Providers in SSMS
Right-click this provider, then Properties, then tick the box for "Allow Inprocess"
You can now create linked server through the GUI or T-SQL
Good luck!

网址:

http://efreedom.com/Question/2-175257/Install-Oracle-OLE-Drivers-Use-SQL-Server-2008-R2-X64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值