我一直在尝试将各种不同的启动标志组合到 SQL Server 2008 R2 Express,但仍然无法解决此错误:
用户“LOCALSERVER\Administrator”登录失败。原因:服务器处于单用户模式。此时只有一个管理员可以连接。(Microsoft SQL Server,错误:18461)
-m"SQLCMD"
我尝试过在和中以单用户模式启动它,-m"sqlcmd"
甚至尝试过-m"Microsoft SQL Server Management Studio - Query"
用适当的客户端启动它并连接它,但总是出现此错误。我 99% 确定没有其他东西窃取我的连接,当使用 SSMS 连接时,我确保执行“new query-connect”方法以确保它仅使用 1 个连接。
有其他人遇到过这个问题吗?我该如何修复并登录?
答案1
这是我刚刚找到的针对这个老问题的解决方案:
- 停止所有 SQL 服务
- 以 -m 开头
- 运行 MSSQL Management Studio作为管理员
如果没有以管理员身份启动(因为我不是),那么您将收到通用的管理员已连接信息。而不是说您无法连接,因为您不是管理员。
Microsoft 的另一个令人困惑的错误。我想 sqlcmd 也存在同样的问题
问候
利亚姆
答案2
尽管微软否则您不应该在 -m 后加引号。因此对于 SQLCMD,您应该这样做-mSQLCMD
。我没有在任何地方看到过这种说法,所以我将在这里记录下来。如果没有其他方法,请尝试不加引号。
答案3
-m 后面不应该有任何内容。语法应如下所示:
sqlservr.exe -c -f -m
然后使用 sqlcmd 登录实例并进行所需的更改。如果您尝试使用 SQL Server Management Studio 登录,您将无法登录,因为 SSMS 需要多个连接才能登录。
答案4
在 SQL Server 配置管理器上设置参数 -m 后重新启动 SQL Server 服务,然后以管理员身份运行 ssms,它将 100% 正常运行。