sql server 2012 r2 单位用户修改为多用户

本文介绍了如何在SQL Server中将数据库从单用户状态切换到多用户状态的方法,包括使用sp_who2查找并终止不必要的连接,以及针对不同版本的SQL Server(如2005、2008和2012)进行操作的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

-- 将目标数据库置为多用户状态

--报错误:

--消息 5069,级别 16,状态 1,第 1 行


--错误:924  数据库已打开,并且一次只能有一个用户访问


方法1:

EXEC sp_who2 ;

go

--找到连接当前单用户的进程,若太多了,考到excel里找一下。

kill  spid 

go

ALTERDATABASE 库名 SET MULTI_USER;


go


针对 SQL Server 2008  SQL Server 2005

 

use master

declare @databasename varchar(255)

 set@databasename='[数据库名]'

 

-- 将目标数据库置为单用户状态

exec sp_dboption@databasename, N'single', N'true'

 

-- 修复数据库dbcc checkdb(@databasename,REPAIR_REBUILD)

-- 将目标数据库置为多用户状态

 

exec sp_dboption@databasename, N'single', N'false'

 

针对 SQL Server 2012

 

USE master;

GO

ALTER DATABASE AdventureWorks2012

SET SINGLE_USERWITH ROLLBACK IMMEDIATE;

GO

ALTER DATABASE AdventureWorks2012

SET READ_ONLY;

GO

ALTER DATABASE AdventureWorks2012

SET MULTI_USER;

GO




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值