1

这是我在这里的第一篇文章,所以对于任何格式问题/缺乏经验,我深表歉意。

我有一个带有两个实例(默认实例和命名实例)的 SQL Server。

SQL Server 最初加入了一个域,但后来又加入了一个新域。

当我在 SQL Server ( ) 上本地连接到命名实例MySQLServer\MyInstance时,我可以使用 Windows 身份验证登录。

但是,当尝试MySQLServer\MyInstance从该域上的另一台服务器连接时,出现错误

目标主体名称不正确。无法生成 SSPI 上下文

Windows 帐户设置为具有运行服务的帐户的 SPN 读/写权限(返回“setspn -l newdomain\windowsaccount”(运行 SQL 服务的帐户))为具有新域的 FQDN 的实例返回预期的 SPN 注册表。我也可以使用远程服务器上的 SQL Server 凭据登录。

但是,当我尝试使用 FQDN(即MySQLServer.newdomain.local\MyInstance)连接到命名实例时,它会让我使用 Windows 身份验证。有没有人见过这个或知道我能做些什么来解决?

我已经尝试刷新 DNS 并重新启动 SQL 和远程服务器,所以所有服务都应该在重新启动时考虑(这只是一个内部测试环境,所以没有客户端受到影响 :))。

任何想法或提示将不胜感激!

4

1 回答 1

1

我猜这MySQLServer只是MySQLServer.newdomain.local. 所以我会检查你的 DNS 服务器正在回复什么 (cmd/ps)nslookup MySQLServernslookup <<yourIPhere>.

您还可以检查哪个用户正在运行有关 SPN 相关错误的 SQL Server 服务或/和使用Microsoft 提供的工具

此外,为您的新域重新注册 DNS 条目可能有助于避免 DNS 问题 (cmd):

ipconfig /registerdns

通常这是在域加入和重新启动中完成的,但根据我的经验,它有时会丢失。

于 2020-05-13T16:48:41.127 回答