SQL Server 问题:用户“用户名”登录失败

SQL Server 问题:用户“用户名”登录失败

我正在运行 SQL Server 2008 Standard 的副本,并尝试设置新的用户登录以通过 Web 应用程序访问数据库。

  1. 我正在使用安全->登录->添加登录来创建用户。
  2. 指定登录名和密码
  3. 已选择默认数据库
  4. 我正在使用“公共”服务器角色
  5. 我正在“用户映射”中映射到我需要的数据库,并将其选为“db_owner”

...应用程序上的登录名/密码组合反复失败,甚至当我尝试通过 SQL Server Management Studio 登录时,我收到:

Login failed for user 'username'. (Microsoft SQL Server, Error: 18456)

这可能是什么原因造成的?

答案1

检查 SQL Server 是否正在运行 SQL Server 身份验证。在 Microsoft SQL Server Management Studio 中,右键单击数据库服务器,选择“属性”,然后查看“安全”页面中的“服务器身份验证”部分。

答案2

这篇博客文章可以帮助找出导致错误的原因:

了解 SQL Server 2005 中的“登录失败”(错误 18456)错误消息

为了确定失败的真正原因,管理员可以查看服务器的错误日志,其中会写入相应的条目。

查看错误状态:

错误状态 错误描述
2 和 5 无效的用户 ID
6 尝试使用带有 SQL 身份验证的 Windows 登录名
7 登录被禁用且密码不匹配
8 密码不匹配
9 密码无效
11 和 12 登录有效但服务器访问失败
13 SQL Server 服务已暂停
18 需要更改密码

答案3

多谢,

它仅被设置为 Windows 身份验证。

右键单击您的实例 -> 转到服务器属性 -> 安全 -> 然后更改为 SQL Server 和 Windows 身份验证模式

您可能必须重新启动您的实例。

再次感谢,巴斯卡

答案4

SQL Server 中的“用户”和“登录”是两个不同的东西。

尝试:

CREATE USER myUserName FOR LOGIN myLoginName

希望有帮助;-)

相关内容