我是SQL Server新手。请帮我解决。
我在SQL Server Management Studio(2008 R2)中创建了一个具有密码的用户。当我对此用户使用sqlcmd
时,sqlcmd说
C:\Console2>sqlcmd -U admin
Password:
Msg 18456,Level 14,State 1,Server machinename,Line 1
用户'admin'登录失败。
我可以使用SQL Server Management Studio与该用户访问服务器。
P.S
sqlcmd
进行连接并执行select @@version
查询时,它总是会说2012年,即使我正在连接2008 R2的sqlcmd
。答案 0 :(得分:2)
您的计算机上可能有多个服务器实例。某些MS产品会安装SQL Server Developer版,除非您明确告诉它不要这样做。因此,除非您明确告诉sqlcmd
要连接哪个实例,否则它可能会连接到您不期望的内容。
sqlcmd -S servername -d database name -U id
答案 1 :(得分:2)
试试这个:
-S MyServer\MyInstance
以及数据库
答案 2 :(得分:0)
默认情况下,登录失败错误消息只是由于登录凭据不匹配而导致服务器拒绝客户端用户连接。您可能检查的第一个任务是查看该用户是否对该SQL Server实例和相关数据库具有相关权限,这很好。显然,如果没有设置必要的prvileges,那么你需要通过为该用户登录授予相关权限来解决该问题。 Check out this post, it shows how to trouble-shoot this error.