【问题标题】:Single user restrictions even if nobody's connected即使没有人连接也有单用户限制
【发布时间】:2020-06-16 15:55:22
【问题描述】:

使用 SQL Server Management Studio 时,我尝试查询使用“单用户”限制创建的数据库。

我使用 SQL 凭据和“sa”用户登录并运行 sp_who2 命令,我仔细检查了没有人连接到数据库,但是在对数据库表执行查询时,系统回复:

数据库“MyDB”已经打开,一次只能有一个用户。

我想了解我遇到此问题的原因。 有人可以帮忙吗?

【问题讨论】:

    标签: sql-server ssms single-user sql-server-2019-express


    【解决方案1】:

    当您将数据库设置为“单用户”模式时,您只能打开与数据库的单个连接(更多信息here)。

    因此,当您打开 SSMS 以浏览数据库对象时,您会打开唯一允许的连接。在此之后,任何其他需要与数据库建立新连接的操作都将失败,例如创建一个新的查询窗口来编写查询。

    来自 MS Docs:

    当您在单用户模式下启动 SQL Server 实例时,SQL Server Management Studio 可以连接到 SQL Server。 Management Studio 中的对象资源管理器可能会失败,因为某些操作需要多个连接。要在单用户模式下管理 SQL Server,请通过仅通过 Management Studio 中的查询编辑器进行连接来执行 Transact-SQL 语句,或使用 sqlcmd 实用程序。

    如果您正在运行 SQL Server 代理,则会在本地发生同样的情况。

    MS Docs 的另一个建议(如果您在本地运行 SQL Server):

    在以单用户模式连接到 SQL Server 实例之前停止 SQL Server 代理服务;否则,SQL Server 代理服务会使用该连接,从而阻止它。

    【讨论】:

      猜你喜欢
      • 2020-12-10
      • 1970-01-01
      • 2017-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多