两台Server,环境一样,都使用同一域账号。Server03的SQL Server可以通过Windows认证连接到Server04,但Server04通过Windows认证连接Server03时报如下错误:
目标主体名称不正确,无法生成 SSPI 上下文。
PING Server03或Ping -a Server03,看起来都正常,问题究竟出在何处呢?无法生成SSPI上下文的原因比较多,具体可以搜索网络,但我决定先从“目标主体名称不正确”下手。如下:
首先运行setspn -L Server03和setspn -L Server04,结果发现Server03多了两个MSSQLSvc打头的SPN。
接下来,删除两个以MSSQLSvc打头的SPN,命令时setspn -D SPN_name Server03
最后重启Server03,再用Server04通过Windows认证连接Server03时,发现问题解除,成功建立了连接。
关于setspn命令的更多信息可以参考
http://technet.microsoft.com/zh-cn/library/cc731241(v=WS.10).aspx
。
关于如何排查“Cannot generate SSPI context”(无法生成 SSPI 上下文)错误消息,可参考
http://support.microsoft.com/kb/811889/zh-cn
版权声明:本文为Burgess_Liu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。