SQL Server 2008 R2 x64连接Oracle解决方案
2011-03-16 07:27
561 查看
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
一:环境
操作系统环境: 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
相关文章推荐
- SQL Server 2008 R2 x64连接Oracle解决方案
- Win 2008 R2 x64 PL/SQL 连接 Oralce 提示 Could not initialize "%ORACLE_HOME%\bin\oci.dll"
- 引发关于SQL Server 2008 R2连接Oracle客户端和网络软件的错误
- sql server 2008 r2 64位 如何连接oracle
- sql server 2008 r2 错误1316 。指定的账户已存在的解决方案
- win2008 enterprise R2 x64 中安装SQL server 2008的方法
- 配置Windows 2008 R2 防火墙允许远程访问SQL Server 2008 R2 更改端口 连接字符串 IP+逗号+端口号
- java连接sql server 2008 R2数据库
- SQL SERVER 2008 R2 SP1更新时,遇上共享功能更新失败解决方案
- 如何解决SQL Server 2008 R2无法连接到(local)
- sql server 2008 r2 "远程过程调用失败"解决方案
- SQL Server 2008 R2开启数据库的远程连接
- Sql Server数据库 002—sql server 2008 r2 连接字符串
- SQL Server 2008 R2如何开启数据库的远程连接
- SQL SERVER 2008 R2 无法连接
- win2008 r2 安装sql server 2005/2008 无法连接服务器解决方法
- Oracle 11g r2 x64 中文乱码解决方案
- 以SQL Server 身份连接SQL Server 2008 R2时出现18452错误
- sql server 2008 r2 中的oracle发布使用笔记
- 无法连接到SQL Server 2008 R2