【问题标题】:Can't connect to SQL locally with SQL Server authentication无法使用 SQL Server 身份验证在本地连接到 SQL
【发布时间】:2015-12-05 00:49:40
【问题描述】:

我配置了一个 SQL Server 实例,但当我尝试本地连接(实例服务器)时,我遇到了 de SQL Server 身份验证问题。

当我远程连接到 SQL 时,SQL Server 身份验证工作正常,但当我尝试本地连接时,服务器返回 SQL 错误 18456。

我不知道发生了什么...我可以远程连接但不能本地连接

【问题讨论】:

  • “本地”是什么意思?实例的名称是什么,您的连接字符串是什么?您启用了哪些协议?是否启用了 SQL 身份验证?您在这两种情况下都提供了正确的用户名/密码吗?代码在哪里?你尝试了什么?有一件事是绝对确定的——SQL 身份验证确实适用于任何类型的连接。如果没有,人们会在过去 15 年注意到
  • 您确定您正在连接到正确的实例吗?例如,如果您的“远程”连接到机器名称,但“本地”连接到实例名称(反之亦然),那么您将连接到错误的数据库
  • Y 尝试通过 SQL Server Management Studio 进行连接。我启用了 SQL 和 Windows 身份验证。用户名/密码是正确的,因为它可以远程工作。 TCP/IP 协议已启用。服务器实例为 STG-SQL
  • 您在哪里尝试连接 - 在这两种情况下?您在这两种情况下都使用什么服务器/实例名称?您是否在这两种情况下都尝试过 same 服务器名称? 是否您在对话框中选择了 SQL Server 身份验证?鉴于 SQL 身份验证有效,您需要找出问题所在。
  • 错误编号附带的状态编号是什么? 18456 错误的状态编号通常会揭示其原因。检查此duplicate questionAaron Bertrand's detailed article 了解各种状态的含义

标签: sql-server authentication


【解决方案1】:

如果您的实例名为SQLEXPRESS,那么您需要使用.\SQLEXPRESS(local)\SQLEXPRESSyourMachineName\SQLEXPRESS 作为您的服务器名称 - 如果您有一个命名实例,您需要在您的服务器名称。

【讨论】:

  • 错误消息不是关于连接到实例,而是登录失败,尽管连接字符串中可能缺少实例名称。问题中没有足够的信息来给出答案
【解决方案2】:

此问题中没有足够的信息来给出答案。唯一可以确定的是,本地或远程连接不会真正影响身份验证的执行方式。

简答

确保您正在连接到正确的服务器。如果是,请检查 SQL Server 的日志以获取失败的登录消息。消息的状态编号说明了失败的原因。在 SSMS 对象资源管理器中,转到 Management > SQL Server Logs > Current

长答案

错误为 18456 的事实意味着您可以连接到 a 服务器,但凭据被拒绝。

其中一个原因可能是您连接到错误的服务器:连接到实例时,您必须始终提供实例名称,例如:.\INSTANCEMACHINE\INSTANCE。如果您单击 SSMS 错误对话框中的 Technical Details 按钮,您将看到您尝试连接的服务器\实例。出于安全原因,此消息中没有透露其他信息。

顺便说一句,单击对话框的帮助按钮将打开一个帮助页面,其中会快速解释可能发生的情况。

要诊断真正的身份验证问题,您需要找到完整的错误消息。完整的消息,包括解释原因的状态编号,存储在服务器的日志中。在 SSMS 中,您会在 Management > SQL Server Logs > Current 中找到日志。

一般来说,检查 SQL Server 的日志应该是遇到与 SQL 语句没有直接关系的错误时的第一个操作。

similar SO question 中讨论了各种状态的含义,在this MSDN blog postAaron Bertrand 的这篇详细文章中进行了描述。

从 SO 问题复制的州编号快速列表:

2, 5 = Invalid userid
6 = Attempt to use a Windows login name with SQL Authentication
7 = Login disabled and password mismatch
8 = Password mismatch
9 = Invalid password
11, 12 = Valid login but server access failure
13 = SQL Server service paused
18 = Change password required

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2013-09-07
    相关资源
    最近更新 更多