作为SQL作业运行时,SSIS包会停止

时间:2016-01-07 16:25:52

标签: sql-server ssis

以下是问题的简短版本:我有一个离散的DTSX文件,可以在我们的生产服务器上正常工作,但不在我们的新开发服务器上。

症状:从SQL-Server作业运行时,作业启动,一切都没有发生,它永远不会完成......它只是挂起,使用非常少的系统资源。

一些信息:对于Prod,这些软件包是在SQL-Server 2012上开发的,并在NT 2008服务器上运行。新的Dev服务器也是SQL-Server 2012,但在NT 2012服务器上运行(如果重要的话)。我已经完全复制了文件夹/文件结构,包括驱动器名称。该软件包使用外部dtsConfig文件,但正如我所说 - 文件夹/文件结构是相同的。

SSIS服务,SQL-Server代理和我的远程登录都是相同的,并且是Dev框中服务器管理员组的成员。如果我从SQL作业复制命令行文本并使用dtexec.exe在CMD窗口中运行它,则程序包将正确执行。工作所有者是我的登录,"运行为"是SQL-Agent,正如我所提到的 - 是同一个登录。由于程序包中的所有内容都使用集成安全性,因此无论是在命令行还是通过SQL-Agent,所有内容都应使用相同的登录名运行,这样可以消除任何用户权限/凭据问题。

我尝试将SSIS日志记录添加到包中,记录我所能做的一切。当我从命令行运行包时,我在日志中收到大量消息。当我通过SQL作业运行包时,日志中根本没有消息 - 没有。

无论发生了什么,它都无法进入SSIS包以生成单个日志条目。它只是停止但没有退出或抛出错误。 FWIW - 我和其他所有尝试过的套餐都有同样的问题。

任何想法都表示赞赏......

1 个答案:

答案 0 :(得分:0)

我找到了问题的原因。 MS-SQL Server服务使用的登录名不同于SSIS服务器服务和NT代理服务(它使用的是本地服务帐户)。

一旦我更改了MS-SQL Server登录以匹配其他(并重新启动了服务),作业就会正确运行。