📅  最后修改于: 2023-12-03 15:37:31.834000             🧑  作者: Mango
在 SQL Server 中,数据库可以处于单用户模式或多用户模式。单用户模式下,只能有一个用户连接到数据库,进行维护或修复工作。而多用户模式则允许多个用户同时连接并访问数据库。
要将数据库设置为单用户模式,可以使用以下 SQL 命令:
ALTER DATABASE [database_name] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
其中,database_name
为要设置为单用户模式的数据库名称。
在执行该命令前,应该断开所有当前连接到该数据库的会话。为此,可以使用 WITH ROLLBACK IMMEDIATE
选项强制回滚所有未完成的事务,并关闭所有连接到该数据库的会话。如果不使用该选项,则命令将等待所有连接释放后再执行。
要将数据库设置回多用户模式,可以使用以下 SQL 命令:
ALTER DATABASE [database_name] SET MULTI_USER;
其中,database_name
为要设置回多用户模式的数据库名称。
在执行该命令前,应该确保已经完成所有必要的维护或修复工作,并且不再需要单用户模式。一旦将数据库设置回多用户模式,其他用户就可以重新连接和访问该数据库。
sysadmin
或 dbcreator
角色的用户才能连接到数据库。SINGLE_USER
,但未能在没有其他会话的情况下释放所有连接,则可能需要使用 sp_who
或 sp_who2
等系统存储过程来查找并强制关闭该连接。