【问题标题】:‎SSIS/SQL Server Agent execution issue‎ [closed]‎SSIS/SQL Server 代理执行问题‎ [关闭]
【发布时间】:2020-09-08 22:36:52
【问题描述】:

这是对问题的描述和一些屏幕打印。

SSIS/SQL Server 代理执行问题

我有一个包在 SSIS Visual Studio 调试模式下执行没有问题,但是当包部署到服务器和 SQL Server 代理时,包失败并出现错误。我在网上搜索了答案,发现了一些但没有一个有效,包括创建代理。该软件包包含到 2 个不同服务器的 2 个 OLE 连接。如果只使用 1 个连接,它可以正常工作。如果两者都使用,则作业失败。我附上了几个错误的屏幕打印。这一切都在 Visual Studio 2019 和 SQL Server 2016 中。

当包从 SQL 代理作业步骤运行时,它会失败并显示:

 Login failed for user 'REGISNET\RUW4-100$'

【问题讨论】:

  • 请编辑您的问题以将您的错误消息作为文本包含在内。图片中的错误消息无法搜索,因此请勿帮助遇到类似问题的其他人。
  • SSMS 的执行报告非常棒,除非您需要从中复制文本(不是一个选项)。因此,在这种情况下使用“操作 ID”597 并使用它查询 SSISDB SELECT * FROM SSISDB.catalog.operation_messages AS OM WHERE OM.operation_id = 597 如果有很多结果,请将其添加到 where 子句 AND OM.message_type = 120

标签: sql-server ssis sql-server-2016


【解决方案1】:

用户“REGISNET\RUW4-100$”登录失败

由于 SQL 代理使用默认虚拟帐户运行,因此使用 Windows 身份验证与其他服务器的任何连接都将使用计算机帐户进行。

您需要在目标数据库上为机器帐户创建一个登录名,并为其授予足够的权限,以便 SSIS 包对该数据源进行的任何操作。

在目标数据库上运行

create login [REGISNET\RUW4-100$] from windows;
create user [REGISNET\RUW4-100$] for login [REGISNET\RUW4-100$]; 
create role etl_user;
alter role etl_user add member [REGISNET\RUW4-100$];
grant select to etl_user;  --or whatever permissions are needed

【讨论】:

  • 非常感谢,这些命令有效!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-10
  • 2021-07-09
  • 1970-01-01
  • 2017-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多