远程运行SSIS包-它们在什么帐户下运行

本文关键字:运行 在什么 程运行 SSIS | 更新日期: 2023-09-27 18:28:56

我目前正在.NET 4.0中构建一个应用程序,该应用程序将使用SSIS 2008R2包来完成它的工作。这些包位于单独的SQL Server上。SQL服务器有一个帐户代理,它具有执行包所需的所有权限(调用Reporting services、访问磁盘等)。

我的问题是:从C#运行这些包的最佳方式是什么?

我读过关于使用SQL代理在作业中运行包的文章,但我担心的是,作业和包将使用什么帐户?它是运行应用程序的帐户,还是我可以使用SQL Server中的代理帐户?如何配置?

提前感谢!

远程运行SSIS包-它们在什么帐户下运行

您可以配置在SQL Server代理中运行每个作业步骤的用户。在这里使用代理用户是很常见的。

在需要访问SQL Server数据库的情况下,启动作业的一种简单方法是调用SQL Server Agent系统存储过程。但请注意,通过dbo.sp_start_job启动作业是异步的:它只是启动作业,然后返回。您将不得不轮询其他方法来检查工作状态或结果。

并且,用于连接到数据库的数据库用户(如果使用集成登录到SQL Server,则为本地用户)必须具有调用存储过程的权限。