SSIS 为了要能够在64位的机器上面让SSIS存取Oracle,当然需要安装64位的Oracle Provider,但是遇到最大的问题在于SSIS在执行的时候分成两种组件,分别是DTExec.exe(32位版)以及DTExec.exe(64位版),分别存在于Program Files(x86)以及Program Files目录之下。当SSIS在执行时候或者是在利用导入导出数据(64位版)时都不会有问题

但是最大的问题在于SSIS在设计阶段时利用的BIDS只有32位版,因此在开发时若是要测试连接,会找不到对应的32位提供程序,而发生初始化提供程序的问题(所以大家这时会质疑我明明已经装了,为什么他说找不到)

因此若是要解决方式就必须同时安装32位以及64位的Oracle Client。
以下说明,在64位Windows环境下安装Oracle Client & OLEDB组件的步骤(我的操作系统是Windows Server 2008 R2):
1、需要先准备32位以及64位两种版本的Oracle Client,建议使用11.1.0.7.0版,因为如果是使用10.2.0.1版本需要再安装两个Oracle补丁(#4547817 & #5383042) ,如果没有安装以上补丁会遇到ORA-12154: TNS:无法解析指定的连接ID的问题。
2、如果系统上有旧的Oracle clients,请复制备份tnsnames.ora以及sqlnet.ora档案。(位于%ORACLE_HOME%/network/ADMIN/目录下)
3、安装以及删除旧的Oracle client以及安装目录(需要重启计算机,才能够删除目录)。
4、在64位SQL Server的机器上面执行Oracle 11g Client的setup.exe,必须先安装32 位版本。
5、选择[管理员]模式全部安装(专业级人士可以自行选择模式)。

6、选择相应的语言下一步,然后根据需要修改路径

在此我将32位的路径文件夹改为client_1,
将64位的路径文件夹改为client_2.
7、安装完后重新将TNSNAMES.ORA替换新安装的client的%ORACLE_HOME%/network/admin文件夹中,32位和64位都要替换,否则在使用PLSQL或者BIDS创建Oracle数据源时会提示TNS错误。
P.S.如果在安装完2个client(32位和64位)之后使用自带的Net Manager配置服务命名时其配置的的都是64位的,即配置的ORA都存在64位的client目录的admin文件夹中,所以始终无法使用BIDS连接Oracle(除非使用IP\服务名方式)
8、重复以上步骤再安装一次64位Client

P.S.安装时会出现[OracleMTSRecoveryService 已存在]或者一些PATH路径值过多等的错误信息,请点选[忽略]继续安装即可,当然也可以找寻相应的解决方案解决更好,只是这些问题都不是非常严重的。

9、修改以下的注册表设定,然后重启电脑
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\MTxOCI
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\MSDTC\MTxOCI
将值改为
OracleOciLib = oci.dll
OracleSqlLib = orasql11.dll (旧的值是: SQLLib80 .dll)
OracleXaLib = oraclient11.dll (旧的值是: xa80.dll)

此时就可以正常地在64位环境中的BIDS读取Oracle数据了。各位可以利用32位版以及64位版的导入导出数据进行测试。
但是要记得的是,使用BIDS时,它是根据32位的数据提供程序,因此在开发以及排错时还是利用32位的Oracle OLEDB来读取数据。但是当SSIS封装布署到64位SQL Server执行时,他就会改使用64位的Oracle OLEDB

参考博客:http://www.dotblogs.com.tw/allanyiin/archive/2010/11/21/19585.aspx

SSIS 64位环境访问Oracle11g的更多相关文章

  1. 【转载】SSIS 64位环境访问Oracle11g

    转载博客:http://www.dotblogs.com.tw/allanyiin/archive/2010/11/21/19585.aspx SSIS 为了要能够在64位的机器上面让SSIS存取Or ...

  2. 64位环境中使用SQL查询excel的方式解决

    --64位环境中使用SQL查询excel的方式 环境: OS:Windows Server 2008 R2 Enterprise MSSQL:Microsoft SQL Server 2008 R2 ...

  3. Win7系统64位环境下使用Apache——Apache2.4整合Tomcat与mod_jk

    转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/70398091 本文出自[我是干勾鱼的博客] 之前的几篇文章: Win7系统64位 ...

  4. 【Oracle】在WIN NT 64位环境下安装win64_11gR2_database。并用PL/SQL连接

    因为现在大多数服务器环境均为64位环境,而且有一部分使用的windows server的环境,在此做了一番小研究,如何在64位环境下安装oracle11g_64bit服务端 (1)首先www.orac ...

  5. [转]windows10 64位环境下安装mysql5.7.17

    今天以zip模式在windows10 64位环境下安装mysql5.7,到最后一步提示mysql服务无法启动. 安装步骤如下: 1.配置环境变量 我的电脑->属性->高级->环境变量 ...

  6. ASP.Net在64位环境开发部署常见问题

    越来越多的开发团队開始使用64位操作系统作为开发环境,也计划将应用部署在安装有64位操作系统的server上.对于ASP.Net开发人员来说.使用64位环境开发部署须要注意下面几个问题.可在项目过程中 ...

  7. asp.net C# int 类型在32/64位环境下取值范围无变化

    最近在学习中突然想到,我在64位环境下,int取值范围是否有变化?为了检测这个结果,我做了以下这个测试:1.环境:win7旗舰版64位+vs2010 sp1(版本号:10.0.40219.1SP1Re ...

  8. win7 64位环境下配置汇编环境和程序设计

    下载dosbox,并解压安装 下载地址: http://pan.baidu.com/s/1eRJbJAq 默认安装到C:\Program Files (x86)\DOSBox-0.74 安装成功后,双 ...

  9. Win7系统64位环境下使用Apache——安装Apache2.4时报错“Invalid command Order”问题的解决

    之前在文章Win7系统64位环境下使用Apache--Apache2.4整合Tomcat与mod_jk提到了安装Apache2.4时有可能报错: Invalid command 'Order', pe ...

随机推荐

  1. 图解WPF程序打包全过程

    首先打开已经完成的工程,如图: 下面开始制作安装程序包. 第一步:[文件]——[新建]——[项目]——安装项目. 名称——可以自己根据要求修改. 位置——是指你要制作的安装文件存放在什么目录内,可以根 ...

  2. Python实现模拟登陆

    大家经常会用Python进行数据挖掘的说,但是有些网站是需要登陆才能看到内容的,那怎么用Python实现模拟登陆呢?其实网路上关于这方面的描述很多,不过前些日子遇到了一个需要cookie才能登陆的网站 ...

  3. 网络爬虫系统Heritrix的结构分析 (个人读书报告)

      摘要 随着网络时代的日新月异,人们对搜索引擎,网页的内容,大数据处理等问题有了更多的要求.如何从海量的互联网信息中选取最符合要求的信息成为了新的热点.在这种情况下,网络爬虫框架heritrix出现 ...

  4. 利用BlazeDS的AMF3数据封装与Flash 进行Socket通讯

    前几天看到了Adobe有个开源项目BlazeDS,里面提供了Java封装AMF3格式的方法.这个项目貌似主要是利用Flex来Remoting的,不过我们可以利用他来与Flash中的Socket通讯. ...

  5. 在Spring MVC中使用注解的方式校验RequestParams

    概述   Spring MVC支持Bean Validation,通过这个验证技术,可以通过注解方式,很方便的对输入参数进行验证,之前使用的校验方式,都是基于Bean对象的,但是在@RequestPa ...

  6. Office 365 plans, SharePoint Online, and SharePoint 2013 on-premises 功能对比列表

    Andrew ConnellSharePoint大牛整理了一个各个版本SharePoint功能对比列表,是SharePoint相关人员必备资料.赶紧收藏起来. SharePoint 2013 Feat ...

  7. java线性表学习笔记(二)

    链表中的每一个元素都包含一个称为节点的结构,每向链表中增加一个元素,就会产生一个与之相关的节点,每个节点与它相邻的节点相连接(这是基础吧,不过在看c的时候没认真看,呼). 定义节点类如下(使用了泛型, ...

  8. 解决ehcache的UpdateChecker问题

    问题描述 项目中用了ssh框架,每次启动tomcat的时候都特别慢,会在这样一句话下面停留很久 [2016-01-08 23:55:51,517 INFO UpdateChecker.java:doC ...

  9. Uncaught TypeError: Object #<Object> has no method 'fancybox'

    Uncaught TypeError: Object #<Object> has no method 'fancybox' 2011-10-24 16:51:19|  分类: html|举 ...

  10. halcon,C# 学习

    Halcon学习之一:查询图像参数 1.get_grayval ( Image : : Row, Column : Grayval ) 计算Image图像中坐标为(Row,Column)的点的灰度值G ...