4

我是 SQL Server 的新手。请帮我修复。

我在 SQL Server Management Studio (2008 R2) 中创建了一个带密码的用户。当我sqlcmd与这个用户一起使用时,sqlcmd 说

C:\Console2>sqlcmd -U admin
Password: 

消息 18456,级别 14,状态 1,服务器机器名,第 1 行
用户“管理员”登录失败。

我可以使用 SQL Server Management Studio 通过此用户访问服务器。

附言

  • 我有两个 SQL Server Management Studio 实例(2008 R2 和 2012)。我可以从两个版本的 SQL Server Management Studio 访问该用户。
  • 每当我使用sqlcmd和执行select @@version查询连接时,它总是说 2012,即使我正在连接 2008 R2 的sqlcmd
4

3 回答 3

2

尝试这个:

-S MyServer\MyInstance

以及数据库

于 2013-05-17T13:11:27.563 回答
2

您的计算机上可能有多个服务器实例。某些 MS 产品会安装 SQL Server Developer 版本,除非您明确告诉它不要这样做。因此,除非您明确告诉sqlcmd要连接到哪个实例,否则它可能会连接到您不期望的东西。

sqlcmd -S servername -d database name -U id
于 2013-05-17T13:04:00.103 回答
0

默认情况下,登录失败错误消息只是由于登录凭据不匹配,服务器拒绝了客户端用户连接。您可能要检查的第一个任务是查看该用户是否对该 SQL Server 实例和相关数据库也具有相关权限,这很好。显然,如果没有设置必要的权限,那么您需要通过授予该用户登录的相关权限来解决该问题。 看看这篇文章,它展示了如何解决这个错误。

于 2013-05-17T13:12:35.647 回答