SSIS文件系统任务在服务器之间复制文件时出错

Man*_*yak 11 sql sql-server ssis etl ssis-2012

我可以在两个服务器之间复制文件,比如手动说服务器A和服务器B,我有权访问任意一侧的文件夹.

我正在使用文件系统任务来复制文件.

当我的源和目标位于服务器中时,包在Visual Studio和SSISDB中工作正常.

当我的源和目标位于不同的服务器中时,包在Visual Studio中工作正常但是SSISDB中的包失败.它说访问被拒绝.我的帐户映射到SSISDB.

有任何想法来解决这个问题.

使用SQL Server代理JoB可以正常运行该程序包.作业通过代理帐户运行.

我们可以通过任何方式将Package配置为通过代理帐户运行.

错误截图

在此输入图像描述

Had*_*adi 6

首先,@ Nick.McDermaid在注释中提供了非常有用的链接,以了解有关Integration Services目录用于执行软件包的哪些用户凭据的更多信息

建议的解决方案

搜索之后,可能会导致此问题的问题很多,因此我将提供许多解决方案,可以解决您的问题。

运行程序包SSISDB时

1. SQL Server帐户权限

将读写权限添加到您在指定路径上登录的帐户

2.将Windows身份验证添加到网络帐户

您可以为网络帐户添加Windows身份验证登录名(在sql服务器代理中用作代理),并使用该帐户运行程序包。

从SQL Agent运行程序包时

这不是您的情况,但是这些信息可能会有所帮助

1. SQL Server帐户权限

将读写权限添加到指定路径上的以下帐户:

  • NT SERVICE\SQLSERVERAGENT
  • NT SERVICE\MSSQLSERVER

2.设置代理

您可以为SSIS软件包设置代理,然后使用该代理帐户运行作业。

您可以参考以下链接之一以了解更多信息:

3.将网络驱动器映射到SQL Server实例

一些文章建议映射您在SQL Server(而不是OS)上使用的网络驱动器。您可以参考以下链接之一以了解更多信息:

4.添加SysAdmin角色

将SysAdmin角色添加到以下帐户:

  • NT SERVICE\SQLSERVERAGENT
  • NT SERVICE\MSSQLSERVER

其他有类似问题的链接