SSIS 连接Oracle报错 These components are supplied by Oracle
早上有个朋友发邮件给遇到一个SSIS连接Oracle的问题,具体的错误信息如下: Test connection failed because of an error in initializing provider. Oracle client and networking components were not found. These components are supplied by Oracle Cor
早上有个朋友发邮件给遇到一个SSIS连接Oracle的问题,具体的错误信息如下:
Test connection failed because of an error in initializing provider. Oracle client and networking components were not found. These components are supplied by Oracle Corporation and are part of
the Oracle Version 7.3.3 or later client software installation.
Provider is unable to function until these components are installed.
问题的原因:
1.因为BIDS是32位的应用程序即使在64位的机器上面,所以无法使用64位的Microsoft Provider for Oracle.所以从64位的机器上连接Oracle无法成功。
2.因为Microsoft Provider for Oracle只提供了32位的版本,而且微软没有计划在将来发布64的版本。
3.Oracle客户端自身问题,需要安装完整11G客户端。
解决办法如下:
-
Download the Oracle 11G full client.
-
Install the 32 AND the 64 bit version of the 11G full client (Installation Type: Administrator) and reboot the server afterwards. The 32 bit version is needed for development from BIDS with is 32 bit, the 64 bit version is needed for production with the SQLAgent, which is 64 bit.
-
Configure the Oracle clients (both 32 and 64 bits) by editing the files tnsnames.ora and sqlnet.ora. Try to do this with an Oracle DBA or, even better, let him/her do this.
-
Use the "Oracle provider for OLE DB" from SSIS, don't use the "Microsoft Provider for Oracle" because a 64 bit version of it does not exist.
-
Schedule your packages with the SQLAgent.
对于SQL Server 2008 R2的机器需要做额外配置:
1. Open REGEDIT (Start… Run… REGEDIT) on the server and search for the following entry (for the 32 bits driver):
HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI
Make sure the following values are entered:
2. Next, search for (for the 64 bits driver):
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI
Make sure the same values as above are entered.
3. Reboot your server.
来源于:http://sqlblog.com/blogs/jorg_klein/archive/2011/06/09/ssis-connect-to-oracle-on-a-64-bit-machine.aspx
推荐阅读
-
Navicat Premium 10.0.5中文版 oracle连接字符集报错解决办法
-
Navicat Premium 10.0.5中文版 oracle连接字符集报错解决办法
-
linux下oracle报错,提示ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务的解决办法
-
Oracle SQL Developer连接报错(ORA-12505)的解决方案(两种)
-
python连接oracle数据库报错PI-1047: 64-bit Oracle Client library cannot be loaded: "解决方案
-
python连接oracle数据库报错PI-1047: 64-bit Oracle Client library cannot be loaded: "解决方案
-
PL/SQL登录Oracle数据库报错ORA-12154:TNS:无法解析指定的连接标识符已解决(本地未安装Oracle需要连接服务器上的)
-
plsql连接oracle数据库没有反应or报错:oracle12514监听程序当前无法识别连接描述符中请求的服务
-
plsql developer连接oracle 12.2报错 ora-28040 No matching authentication protocol
-
ORACLE异常关闭后导致数据库报错无法连接问题解决办法