故障排除:用户 'x' 登录失败

新建日期: 2006 年 4 月 14 日

因密码或用户名错误而身份验证失败并使连接尝试被拒时,类似下面的消息将返回到客户端:“用户 '<user_name>' 登录失败。(Microsoft SQL Server,错误: 18456)”。

返回到客户端的其他信息有:

“用户 '<user_name>' 登录失败。(.Net SqlClient 数据访问接口)”

------------------------------

“服务器名称:<computer_name>”

“错误号: 18456”

“严重性: 14”

“状态: 1”

“行号: 65536”

也可能返回以下消息:

“消息 18456,级别 14,状态 1,服务器 <computer_name>,第 1 行”

“用户 '<user_name>' 登录失败。”

其他错误信息

为了增强安全性,返回到客户端的错误消息有意隐藏身份验证错误的本质。但是,在 SQL Server 错误日志中,对应的错误包含映射到身份验证失败条件的错误状态。将错误状态与以下列表进行比较以确定登录失败的原因。

状态 说明

2

用户 ID 无效。

5

用户 ID 无效。

6

尝试同时使用 SQL Server 身份验证与 Windows 登录名。

7

登录已禁用,密码不正确。

8

密码不正确。

9

密码无效。

11

登录有效,但服务器访问失败。

12

登录是有效的登录,但服务器访问失败。

18

必须更改密码。

存在其他错误状态,并表示一个意外的内部处理错误。

示例

在此示例中,身份验证错误状态为 8。这指示密码不正确。

日期 来源 消息

2005-09-13 20:12:56.34

登录

错误:18456,严重性:14,状态: 8。

2005-09-13 20:12:56.34

登录

用户 '<user_name>' 登录失败。[客户端:<IP 地址>]

ms366351.note(zh-cn,SQL.90).gif注意:
如果 SQL Server 使用 Windows 身份验证模式进行安装,并随后更改为 SQL Server 和 Windows 身份验证模式,则最初禁用 sa 登录名。这将导致状态为 7 的错误:“用户 'sa' 登录失败。”要启用 sa 登录名,请参阅如何更改服务器身份验证模式

请参阅

其他资源

对数据库引擎连接进行故障排除

帮助和信息

获取 SQL Server 2005 帮助