我正在尝试从运行 XP home 的笔记本电脑连接到 Microsoft Office Accounting 2009(在 Vista 64 上运行)的副本。我已完成所有 MS 步骤(在 Vista 上使用相同的用户名和密码创建用户等),并且我可以从笔记本电脑访问工作站上的文件。
然而,当我尝试访问 MS Accounting 文件时,我收到以下错误消息
“无法打开公司或拒绝访问。请确保已授予访问权限并且公司数据库存在。”
然后我检查 Vista 64 机器上的事件日志,并得到以下信息
建立集成安全性连接时,SSPI 握手失败,错误代码为 0x8009030c;连接已关闭。[客户端:192.XXX.X.XXX]
有人有什么想法吗?
答案1
如果您已正确完成所有设置,我猜您遇到了防火墙问题。您可能需要在 Vista 计算机上添加例外以允许入站 SQL 连接。
答案2
首先,Vista 对 SQL 2005 有特定的安全要求。请注意这一点。如果尚未安装 SQL 2005 SP2 或 SP3,请安装。
其次,检查您的 SQL 实例是否允许 Windows 身份验证。
最后,检查本地 Windows 用户是否有权访问 SQL 以及必要的执行权限。SSPI 使用登录用户的凭据。
有一种可能的解决方法,但我不推荐:添加 SQL 用户并更改连接字符串(如果可以)以使用此 SQL 用户。这将完全绕过 SSPI。不过,SQL 必须在混合模式下运行。
答案3
还要确保您的 SQL Server 实例已启用远程连接,默认情况下它是关闭的。