我需要重新启动数据库,因为某些进程无法运行.我的计划是离线,然后重新上线.

我正在Sql Server Management Studio 2008中try 这样做:

use master;
go
alter database qcvalues
set single_user
with rollback immediate;
alter database qcvalues
set multi_user;
go

我发现了以下错误:

Msg 5061, Level 16, State 1, Line 1
ALTER DATABASE failed because a lock could not be placed on database 'qcvalues'. Try again later.
Msg 5069, Level 16, State 1, Line 1
ALTER DATABASE statement failed.
Msg 5061, Level 16, State 1, Line 4
ALTER DATABASE failed because a lock could not be placed on database 'qcvalues'. Try again later.
Msg 5069, Level 16, State 1, Line 4
ALTER DATABASE statement failed.

我做错了什么?

推荐答案

得到错误后,运行

EXEC sp_who2

在列表中查找数据库.连接可能没有终止.如果发现任何与数据库的连接,请运行

KILL <SPID>

其中<SPID>是连接到数据库的会话的SPID.

删除与数据库的所有连接后,请try 使用脚本.

不幸的是,我不知道你为什么会看到这个问题,但这里有一个链接表明这个问题发生在其他地方.

http://www.geakeit.co.uk/2010/12/11/sql-take-offline-fails-alter-database-failed-because-a-lock-could-not-error-5061/

Sql相关问答推荐

如何创建具有部分可空列的两个表的联合

查询将查找将标记设置为user2的用户

如何在PostgreSQL中同时为id s列表执行多个update语句?'

如何在T—SQL中找到值更改之前的日期?

我可以将INSERT语句与SELECT一起使用来创建条件吗?

Android房间fts4匹配语法AND OR

PostgreSQL:使用JSONB中的字段使用jsonb_to_Records()填充记录

对列进行排序后,基于两列删除重复行

我需要一个regexp_like来只验证字母D或T、数字和管道

SQL:查询作为子查询或CTE写入的最大和数失败

比较SQL中以逗号分隔的字符串

在WHERE EXISTS子查询中,列返回是否重要?

如何在多列上编写具有不同条件的查询?

存储过程太慢

除了风格之外,还有什么理由更喜欢简单的CASE WHEN而不是搜索呢?

用替代方案替换 SQL Cursor 以提高性能

在Snowflake中如何使用SQL对版本字符串进行排序?

Postgresql 需要一个查询,为我提供所有没有具有特定状态值的子元素的父母

PostgreSQL:通过数组的元素从另一个表中 Select 数据,然后按顺序显示

如何从 2 个 SQLite 表构建嵌套对象?