"Cannot generate SSPI context"
一次, 我遇到了连接数据库报“Cannot generate SSPI context”的问题. Google了一下, 解决方案看起来很多, 很杂.
我就开始胡乱捣鼓, 结果发现, 是由于DC上的一个叫做"DNS Server" 的service没有启动导致的.
启动这个服务, 问题就解决了.
希望会对你有帮助.
2014-11-17更新
============
再一次遇到这个问题, 仔细阅读了一下KB-811889.
解决问题的方法如下:
1. 去掉client网卡上非本domain内的DNS Server的IP.
2. 在client机器上, 运行setspn.exe –l MyServerName, 看看是否会有正常的结果输出.
3. 更改SQL Server服务的运行帐号, 可以选择的是切换local server, domain admin, domain user之类的用户帐号.
4. 在client上运行ipconfig /flushdns.
5. 运行ping –a [SQL Server IP], 看是否会有FQDN返回回来. 一旦发现有FQDN返回回来, 那么这个问题就解决了.
参考资料
============
http://blogs.msdn.com/b/sql_protocols/archive/2005/10/19/482782.aspx
http://support.microsoft.com/kb/843248
http://support.microsoft.com/kb/814401
How to troubleshoot the "Cannot generate SSPI context" error message