在 SQL 服务器代理与程序包执行实用程序中执行

Execution Within SQL Server Agent vs Package Execution Utility

简单问题:使用 SQL Server 2012 Integration Package Utility 与使用 2012 SQL 时 ssis 包的执行有何不同服务器代理执行一个包? (在部署中保持所有其他不变- 即在两种情况下都使用本地文件系统)

谢谢。


我问是因为我的 ssis 包脚本中有一个外部引用的 dll,它使用包实用程序成功执行,但在 SQL server 2012 mgmt studio 中部署到服务器代理时却没有。

如果您确定代理服务 运行 在具有适当权限的帐户上,请检查以确保您为两个实例执行相同的运行时版本。您的驱动程序可能是 64 位的,与 32 位运行时不兼容,反之亦然。

如果需要,代理作业步骤的 "execution options" 中有一个选项允许您 select 32 位运行时。

如果您无法使 "SQL Server Integration Services Package" 作业步骤类型工作,您可以更改为使用 "Operating system (CmdExec)" 作业步骤类型,并使用实用程序可执行文件 (dtexec) 简单地构建一个命令,然后从实用程序的 "Command line" 选项卡复制信息。有些人更喜欢这种使用代理执行 SSIS 包的方法,因为它提供了更清洁的作业维护。在 google 中搜索此主题将显示如下文章:http://bi-polar23.blogspot.com/2008/06/ssis-and-sql-server-agent-choosing.html

希望对您有所帮助。