所以我们有一个网络地址,我们将其称为每个人都可以访问的 Z 驱动器。 我所说的每个人是指整个组织。为了完整起见,我实际上继续授予对实际 SQL Server 代理的访问权限。
该包在开发上运行良好,但总是失败
The directory "Z:\SSIS_Test" does not exist
一开始我以为是访问问题。但是 SQL Server 代理如何无法访问每个人的驱动器呢?
此外,我自己作为调用者进入并在服务器上运行该包,但它仍然失败并出现相同的错误。是什么赋予了?难道我没有得到什么吗?
最佳答案
可能的解决方案
(1) 授予服务帐户
尝试向 SQL 数据库引擎服务帐户 NT SERVICE\MSSQL$<Instance Name>
和 NT SERVICE\SQLSERVERAGENT
授予读/写权限(其中 <Instance Name>
应替换为已安装的实例名称):
我遇到了同样的问题,看起来“所有人”权限没有考虑服务帐户(我不确定)。授予数据库引擎和SQL代理服务帐户后,问题得到解决。另请随意阅读以下文档中有关 SQL Server 服务帐户的更多信息:
(2) SQL Server 内映射驱动器
您可以引用以下文章了解更多信息:
或者您可以尝试使用完整的 UNC 路径而不是映射驱动器。
如果这些解决方案不起作用,以下答案中列出了许多其他建议,您可以查看以获取更多信息:
关于sql-server - SSIS 无法访问每个人都有权访问的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60195568/