Jay*_*Jay 4 database sql-server multi-user single-user
我不得不将我的数据库设置为 single_user 模式以允许dbcc checkdb
修复,现在我无法将我的数据库恢复到 multi_user。我在查询窗口中针对 master 数据库尝试了以下命令,但它没有按照另一个堆栈溢出帖子的建议工作:
USE [master];
GO
ALTER DATABASE mydb SET MULTI_USER WITH ROLLBACK IMMEDIATE;
GO
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
消息 5064,级别 16,状态 1,第 2 行此时无法更改数据库“mydb”的状态或选项。数据库处于单用户模式,当前有用户连接到它。
消息 5069,级别 16,状态 1,第 2 行 ALTER DATABASE 语句失败。
如果我右键单击数据库并尝试选择属性,则会错误提示它已在使用中。
任何帮助将不胜感激。
尝试杀死现有连接并在同一批次中设置 MULTI_USER:
USE master;
GO
DECLARE @sql nvarchar(MAX);
SELECT @sql = ' KILL ' + CAST(session_id as varchar(5))
FROM sys.dm_exec_sessions
WHERE database_id = DB_ID(N'mydb');
SET @sql = @sql + N' ALTER DATABASE mydb SET MULTI_USER;';
EXEC sp_executesql @sql;
GO
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6758 次 |
最近记录: |