gpt4 book ai didi

ssis - 在第二台服务器上执行 SSIS 包并写回第一台服务器

转载 作者:行者123 更新时间:2023-12-05 07:22:26 24 4
gpt4 key购买 nike

我有两个 SQL 2016 服务器 - A 和 B。在服务器 A 上,我有一个 SQL 代理作业,其中有一个步骤执行驻留在服务器 B 上的 SSIS 包。服务器 B 上的包向服务器 B 上的表添加一行并尝试将一行写入服务器 A 上的表。

当服务器 A 上的代理作业运行时,程序包在服务器 B(存储和执行 SSIS 包的位置)上成功写入行,但在服务器 A(代理作业所在的位置)写入行时出错正在运行)。

这是我从包裹中得到的错误信息:

SSISTest:Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E4D. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E4D Description: "Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.".

所以问题是当程序包试图将行从服务器 B 写入服务器 A 时。

如何更改服务器 B 上的 SSIS 包并提供凭据以写入服务器 A?或者,让代理作业和程序包在同一域登录下执行?

我已经尝试将两台服务器的 SQL 服务帐户添加为每台服务器上的系统管理员。我还在服务器 A 上创建了一个凭据和代理帐户,使用我的域登录名,它是两台服务器上的系统管理员。

最佳答案

这是典型的“双跳”身份验证不起作用或未配置的情况。
你有几个选择:
1. 更简单:始终从本地 SQL 代理执行 SSIS 包。
2.长期:配置Kerberos并启用双跳。

有一份如何配置 Kerberos 的文档:
Understanding Kerberos
Configure Kerberos for SQL Server 2017

关于ssis - 在第二台服务器上执行 SSIS 包并写回第一台服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56500415/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com