尝试使用Oracle Connection Attunity运行SSIS软件包时遇到问题

时间:2019-09-27 21:01:19

标签: sql-server oracle ssis etl attunity

我遇到以下问题:

我有一个使用Attunity Connection Manager连接到Oracle DB的SSIS软件包。

它确实可以在我的本地PC中连接(连接到远程oracle db服务器)并提取所有内容,似乎可以正常工作。

当我将其加载到SQL Server以作为Job运行时,问题就来了。 我已经运行了其他作业,因此设置正确,设置为以32位运行时运行,并以文件系统类型加载。

但是当我尝试执行作业时,会出现以下错误:

  

以用户名:用户名执行。 Microsoft(R)SQL Server执行包   适用于32位版权(C)的实用程序版本12.0.2548.0   公司。版权所有。开始时间:9:39:28 PM错误:   2019-09-27 21:39:28.90代码:0xC0010018来源:封装
  说明:错误加载值“

现在,由于它在本地运行,所以我认为它可能与SQL Server中用于部署该程序包的内容有关,因此我将提供一些有关设置的信息和一些注意事项:

  1. 使用来自SSIS的本机OLE DB源运行时,它可以工作(但是我想使用耐心性,因为读取速度更快)
  2. 服务器版本为:Windows NT 6.3上的Microsoft SQL Server 2014-12.0.2548.0(X64)-Microsoft SQL Server Developer(64位)
  3. 我尝试从以下位置安装Attunity组件:https://www.microsoft.com/en-us/download/details.aspx?id=55179,但是在我的本地计算机和服务器中都出现了一个错误,提示它确实找到了SQL Server,但是在此屏幕截图之后安装似乎成功完成了下方:

enter image description here (我在注册dll时确实出错:

---------------------------
Microsoft Connector for Oracle by Attunity
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\ENU\AttunitySSISOraAdapters.dll"
---------------------------

An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\ENU\AttunitySSISOraConnections.dll"
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\bin32\ENU\AttunitySSISOraAdapters.dll"
---------------------------
An error occurred during registration of:
"C:\Program Files\Attunity\Microsoft Connector for Oracle\50\bin32\ENU\AttunitySSISOraConnections.dll"
---------------------------

及其后

enter image description here

  1. 我正在运行Visual Studio 2017 Professional 15.9.16,其中包括以下内容:
  

SQL Server数据工具15.1.61906.03120 Microsoft SQL Server数据   工具

     

SQL Server集成服务Microsoft SQL Server集成   Services Designer版本14.0.3002.113

     

用于Visual Studio 12.2.0.1.0的Oracle开发人员工具Oracle开发人员   Visual Studio工具版权所有(c)2005、2017

如果我缺少信息以帮助查明问题,请告诉我。 我想我可能会缺少一个组件,但我真的不知道是什么。

更新:我将包属性中的TargetServerVersion从SQL Server 2017更改为2014(已安装的版本),现在出现此错误:

Error: 2019-09-30 17:53:13.20     Code: 0x000002C0     Source: Package Connection manager "Oracle Connector 1"     Description: OCI error encountered. ORA-12154: TNS:could not resolve the connect identifier specified  End Error  

Error: 2019-09-30 17:53:13.20  Code: 0x0000020F     Source: Data Flow Task 1 1 Oracle Source [343]     Description: The AcquireConnection method call to the connection manager Oracle Connector 1 failed with error code 0x80004005.  There may be error messages posted before this with more information on why the AcquireConnection method call failed.  End Error 

Error: 2019-09-30 17:53:13.20     Code: 0xC0047017     Source: Data Flow Task 1 1 SSIS.Pipeline     Description: Oracle Source failed validation and returned error code 0x80004005.  End Error  

Error: 2019-09-30 17:53:13.20     Code: 0xC004700C     Source: Data Flow Task 1 1 SSIS.Pipeline     Description: One or more component failed validation.  End Error  

Error: 2019-09-30 17:53:13.20     Code: 0xC0024107     Source: Data Flow Task 1 1      Description: There were errors during task validation.  End Error  

DTExec: The package execution returned DTSER_FAILURE (1).  Started:  5:52:41 PM  Finished: 5:53:13 PM  Elapsed:  32.125 seconds.  The package execution failed.  The step failed.

更新2

我已经卸载了所有设备,仅安装了Attunity Connection Manager的V3版本,仍然从上面得到了错误。在这一点上,我不知道会发生什么。 当我从Visual Studio(2017,所有连接管理器都指向服务器)运行它时,它可以工作,但是当我在SQL Server代理上安排它时,它会显示错误,而且,当我使用OLE DB时,它可以很好地工作经理,尝试使用Oracle Source(来自Attunity)时出现问题

我还使用了以下格式的连接管理器:host:port / ServiceName 我在想我可能在服务器上设置了一些错误的内容?在Oracle设置方面?我有以下内容:

TNS_ADMIN:C:\ Oracle \ product \ product \ 11.2.0 \ client_64bit \ network \ admin

我没有更多的装备了,我还要更多吗?

2 个答案:

答案 0 :(得分:2)

试图在32位模式下运行的程序包上引起了错误。我将程序包设置更改为64位,并将SQL Agent设置更改为以64位运行,它开始运行,现在可以正常使用了:)

答案 1 :(得分:1)

也许您错过了有关为您的SQL Server版本获取正确版本的解释。还有关于

的部分
  • 用于Oracle的Microsoft连接器版本4.0 :用于Oracle的Microsoft连接器是一组托管组件,用于与Oracle数据库之间进行数据传输。 该组件旨在与SQL Server 2016 Integration Services的企业版和开发人员版一起使用,并且只能在那些环境中运行。要安装该组件,请运行针对x86或x64计算机的特定于平台的安装程序分别。阅读帮助文件中的安装主题,以了解安装先决条件和其他信息。

也:

  • 用于Oracle的Microsoft连接器5.0版 Microsoft用于Teradata的连接器是一组托管组件,用于从Oracle数据库传输数据或向Oracle数据库传输数据。 该组件旨在与SQL Server 2017 Integration Services的企业版和开发人员版一起使用,并且只能在这些环境中运行。要安装该组件,请针对x86或x64计算机运行特定于平台的安装程序分别。阅读帮助文件中的安装主题,以了解安装先决条件和其他信息。

相反,请尝试使用found here:

的Attunity V3驱动程序