2

我创建了一个 SSIS 包,将其从 Oracle 10g 服务器导出到 SQL SERVER 2008。该包运行良好,当我通过 Microsoft BIDS 运行它时,它运行良好,当我创建它的一个包并在集成服务中运行它时。只有当我通过作业调度程序(SQL Server 代理)安排它时它才会失败

Date,Source,Severity,Step ID,Server,Job Name,Step Name,Notifications,Message,Duration,Sql Severity,Sql Message ID,Operator Emailed,Operator Net sent,Operator Paged,Retries Attempted
07/26/2012 15:20:12,PATH JOB,Error,0,DSSSERVER,PATH JOB,(Job outcome),,The job failed.        
 The Job was invoked by User HHSH\user7199.  The last step to run was step 1 (PATH JOB).,00:00:01,0,0,,,,0
07/26/2012 15:20:12,PATH JOB,Error,1,DSSSERVER,PATH JOB,PATH JOB,,Executed as user: HHSH\DSSSERVER$. Microsoft (R) SQL Server Execute Package Utility  Version 10.50.1600.1 for 64-bit  Copyright (C) Microsoft Corporation 2010. All rights reserved.    Started:  3:20:12 PM  Error: 2012-07-26 15:20:12.93     Code: 0xC0047062     Source: CLINICS ADO NET Source [1]     
Description: Microsoft.SqlServer.Dts.Runtime.DtsCouldNotCreateManagedConnectionException: Could not create a managed connection manager.     
at Microsoft.SqlServer.Dts.Runtime.ManagedHelper.GetManagedConnection(String assemblyQualifiedName<c/> String connStr<c/> Object transaction)     
at Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100.AcquireConnection(Object pTransaction)     
at Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.AcquireConnections(Object transaction)     
at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostAcquireConnections(IDTSManagedComponentWrapper100 wrapper<c/> Object transaction)  End Error  Error: 2012-07-26 15:20:12.93     
Code: 0xC0047017     Source: CLINICS SSIS.Pipeline     Description: component "ADO NET Source" (1) failed validation and returned error code 0x80131500.  End Error  Error: 2012-07-26 15:20:12.93     
Code: 0xC004700C     Source: CLINICS SSIS.Pipeline     Description: One or more component failed validation.  End Error  Error: 2012-07-26 15:20:12.93     Code: 0xC0024107     Source: CLINICS      
Description: There were errors during task validation.  End Error  DTExec: The package execution returned DTSER_FAILURE (1).  Started:  3:20:12 PM  Finished: 3:20:12 PM  Elapsed:  0.624 seconds.  The package execution failed.  
The step failed.,00:00:01,0,0,,,,0
07/26/2012 15:18:21,PATH JOB,Error,0,DSSSERVER,PATH JOB,(Job outcome),,The job failed.  The Job was invoked by User HHSH\user7199.  The last step to run was step 1 (PATH JOB).,00:00:01,0,0,,,,0
07/26/2012 15:18:22,PATH JOB,Error,1,DSSSERVER,PATH JOB,PATH JOB,,Executed as user: HHSH\DSSSERVER$. 
Microsoft (R) SQL Server Execute Package Utility  Version 10.50.1600.1 for 64-bit  Copyright (C) Microsoft Corporation 2010. All rights reserved.    Started:  3:18:22 PM   
Error: 2012-07-26 15:18:22.76     Code: 0xC0047062     Source: CLINICS ADO NET Source [1]     Description: 
Microsoft.SqlServer.Dts.Runtime.DtsCouldNotCreateManagedConnectionException: Could not create a managed connection manager.     
at Microsoft.SqlServer.Dts.Runtime.ManagedHelper.GetManagedConnection(String assemblyQualifiedName<c/> String connStr<c/> Object transaction)     
at Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100.AcquireConnection(Object pTransaction)     
at Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.AcquireConnections(Object transaction)     
at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostAcquireConnections(IDTSManagedComponentWrapper100 wrapper<c/> Object transaction)  End Error  Error: 2012-07-26 15:18:22.76     
Code: 0xC0047017     Source: CLINICS SSIS.Pipeline     Description: component "ADO NET Source" (1) failed validation and returned error code 0x80131500.  End Error  Error: 2012-07-26 15:18:22.76     
Code: 0xC004700C     Source: CLINICS SSIS.Pipeline     Description: One or more component failed validation.  End Error  Error: 2012-07-26 15:18:22.76     Code: 0xC0024107     
Source: CLINICS      Description: There were errors during task validation.  End Error  DTExec: The package execution returned DTSER_FAILURE (1).  Started:  3:18:22 PM  Finished: 3:18:22 PM  Elapsed:  0.655 seconds.  The package execution failed.  The step failed.,00:00:00,0,0,,,,0
07/24/2012 13:48:00,PATH JOB,Error,0,DSSSERVER,PATH JOB,(Job outcome),,The job failed.  
The Job was invoked by Schedule 23 (JOb Schedule for LAb PAthology).  The last step to run was step 1 (PATH JOB).,00:00:00,0,0,,,,0
07/24/2012 13:48:00,PATH JOB,Error,1,DSSSERVER,PATH JOB,PATH JOB,,Executed as user: HHSH\DSSSERVER$. Microsoft (R) SQL Server Execute Package Utility  Version 10.50.1600.1 for 64-bit  Copyright (C) Microsoft Corporation 2010. All rights reserved.    Started:  1:48:00 PM  Error: 2012-07-24 13:48:00.72     Code: 0xC0047062     Source: CLINICS ADO NET Source [1]     Description: 
Microsoft.SqlServer.Dts.Runtime.DtsCouldNotCreateManagedConnectionException: Could not create a managed connection manager.     
at Microsoft.SqlServer.Dts.Runtime.ManagedHelper.GetManagedConnection(String assemblyQualifiedName<c/> String connStr<c/> Object transaction)     at Microsoft.SqlServer.Dts.Runtime.Wrapper.IDTSConnectionManager100.AcquireConnection(Object pTransaction)     at Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.AcquireConnections(Object transaction)     at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostAcquireConnections(IDTSManagedComponentWrapper100 wrapper<c/> Object transaction)  End Error  Error: 2012-07-24 13:48:00.72     Code: 0xC0047017     Source: CLINICS SSIS.Pipeline     Description: component "ADO NET Source" (1) failed validation and returned error code 0x80131500.  End 
 Error  Error: 2012-07-24 13:48:00.72     Code: 0xC004700C     Source: CLINICS SSIS.Pipeline     Description: One or more component failed validation.  End Error  Error: 2012-07-24 13:48:00.72     Code: 0xC0024107     Source: CLINICS      Description: There were errors during task validation.  End Error  DTExec: The package execution returned DTSER_FAILURE (1).  Started:  1:48:00 PM  Finished: 1:48:00 PM  Elapsed:  0.639 seconds.  The package execution failed.  The step failed.,00:00:00,0,0,,,,0
4

2 回答 2

11

在 BIDS 中运行良好但在 SQL 作业中运行良好的大多数问题是由于以下情况引起的:

  • 数据源连接或文件访问问题(当运行 sql 代理的用户没有对 db 或目标文件的正确权限时)。

  • 包保护级别(pwd 是敏感数据,有时根据保护级别不复制)。

  • 64 位问题(由于没有适用于 64 位系统的 Jet 驱动程序,因此在 64 位操作系统上运行时,您需要在 sql 作业中使用 32 位 DTEXEC 或设置“使用 32 位运行时”选项,当您在“执行选项”选项卡上'正在创建一个 SSIS 作业步骤,请查看下面链接上的图像以查看它)。

32 位运行时选项图像

有关此主题的信息,我建议您查看以下文章,其中包含有关此类情况的详细信息。

如何对 SQL 代理作业中的 SSIS 包执行失败进行故障排除?

希望这可以帮助你..

亲切的问候,

于 2012-09-23T19:12:36.943 回答
0

SQL Server 代理有一个小故障,我有一个类似的问题,所以我所做的只是再次构建项目,如果你有任何脚本,我再次构建它然后再次构建项目,删除包的路径正在引用,使用位于 bin 文件夹中的包重新创建路径,然后安排作业运行并且确实如此,有时 SQL Server 代理无法正确缓存请求。我知道这篇文章是两年前提出的,但这是针对目前有问题的人。当您将其安排为作业时,如果您在包中有 sendemail 任务并且如果您不是分发列表的一部分,则包也不会运行,您也发送电子邮件。

于 2014-10-24T20:04:14.867 回答