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

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

  1. 我正在使用安全性 – >login – >添加login来创build用户。
  2. 指定了login名和密码
  3. 默认数据库已被选中
  4. 我正在使用“公共”服务器angular色
  5. 我正在映射到“用户映射”中所需的数据库,并将其选为“db_owner”

…login/密码组合在应用程序上反复失败,甚至当我尝试通过SQL Server Management Studiologin时,我正在接收:

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

这可能是什么原因?

检查SQL Server是否正在运行SQL Server身份validation

这个博客文章可以帮助find是什么导致错误:

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

要确定失败的真正原因,pipe理员可以在服务器的错误日志中查找写入相应条目的位置。

看看错误状态:

错误状态错误描述
 2和5无效的用户标识
 6尝试在SQL身份validation中使用Windowslogin名
 7禁用login和密码不匹配
 8密码不匹配
 9密码无效
 11和12有效login但服务器访问失败
 13 SQL Server服务暂停
 18需要更改密码

非常感谢,

它只被设置为Windows身份validation。

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

你可能不得不重新启动你的实例。

再次感谢Baskar

创build一个额外的testinglogin,以确定问题是否仅限于您的原始login。 如果您的密码使用特殊字符,请在“记事本”中input密码,并检查您在“记事本”中看到的内容是否为预期的密码。 我有一个类似的问题,这是键盘被设置为美国布局,而不是英国。 祝你好运!

SQL Server中的“用户”和“login”是两回事。

尝试:

 CREATE USER myUserName FOR LOGIN myLoginName 

希望有帮助;-)