SQL Server ->> 无法将数据库从SINGLE_USER模式切换回MULTI_USER模式(Error 5064)

报错信息如下:

Msg 5064, Level 16, State 1, Line 1
Changes to the state or options of database ‘test‘ cannot be made at this time. The database is in single-user mode, and a user is currently connected to it.
Msg 5069, Level 16, State 1, Line 1
ALTER DATABASE statement failed.

有人还连着数据库,从下面步骤检查:

1)通过sys.sysprocesses或者sys.dm_exec_sessions,或者存储过程sp_who,然后用KILL命令把会话切断

select * from sys.sysprocesses
where spid > 50
And dbid=DB_ID (‘MyDB‘)
SELECT * FROM sys.dm_exec_sessions
WHERE database_id = DB_ID (‘MyDB‘)

2)如果上面还是行不通,再检查sys.dm_tran_locks,然后用KILL命令把会话切断

select * from sys.dm_tran_locks where resource_database_id= DB_ID (‘MyDB‘)
时间: 2024-08-27 14:04:49

SQL Server ->> 无法将数据库从SINGLE_USER模式切换回MULTI_USER模式(Error 5064)的相关文章

无法将数据库从SINGLE_USER模式切换回MULTI_USER模式(Error 5064)

今天公司SQL Server数据库无意间变为SINGLE_USER模式了,而且使用如下语句切换回MULTI_USER失败: ALTER DATABASE [MyDB] SET MULTI_USER WITH ROLLBACK IMMEDIATE 报错: Msg 5064, Level 16, State 1, Line 1 Changes to the state or options of database 'MyDB' cannot be made at this time. The dat

SQL Server 断开某个数据库所有连接(还原的时候需要)

问题描述: SQL Server数据库备份还原后,在数据库名称后会出现"受限制访问"字样 解决办法: 右键点击数据库 -> 属性 -> 选项 -> 状态 -> 限制访问 -> 选择Multiple -> 确定. 问题描述: 在对SQL Server数据库进行还原时,提示:System.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权.(Microsoft.SqlServer.Smo).出现此问题的原

SQL Server 维护计划实现数据库备份(策略实战)

一.背景 之前写过一篇关于备份的文章:SQL Server 维护计划实现数据库备份,上面文章使用完整备份和差异备份基本上能解决数据库备份的问题,但是为了保障数据更加安全,我们需要再次完善我们的备份计划: 下面这篇文章主要加入了日志备份,并对设计备份的频率和设计命名规范等问题进行实战: 二.最佳实践 (一) 备份计划 1) 每周星期日的2:00:00执行数据库的完整备份: 2) 每周星期一至星期六每天的2:00:00执行数据库的差异备份: 3) 每天在8:00:00和23:59:59之间.每1小时

Sql Server 2008 R2 数据库脚本导出方法

经常忘记怎么搞,截几张图记录一下. 1 选中要导出的数据库,右键->任务->生成脚本 2 3 4 查看保存的脚本 Sql Server 2008 R2 数据库脚本导出方法,布布扣,bubuko.com

SQL Server 2005恢复数据库详细图文教程

不少需要用到sql2005的程序,有很多新手还是会操作,这里写个详细的图文教程送个菜鸟们,高手请飘过.适用于独立主机的朋友使用,如果你还没安装,请按照这个教程来安装 SQL Server 2005图文安装教程,超详细 下面是SQL Server 2005恢复数据库的详细过程 1:打开SQL Server Management Studio并登录,这个一般在开始--程序里面找到 2:鼠标右键单击数据库--新建数据库 3:弹出来的框里,填写数据库名称,我这里填写的是sqlqtdy,这个根据自己需求来

疑难杂症--SQL SERVER 2012下数据库内存异常回收

--=================================================================== --背景: 在一台SQL SERVER 2012 SP1(11.0.3000)服务器上,由于批处理请求较高,CPU使用率超过40%,于是开始各种调研.. 服务器情况: 服务器物理内存为128GB, 分配给SQL SERVER 115GB,Windows 可用物理内存为6GB左右 压力情况: 批处理请求超过30000+,有大量UPDATE和INSERT操作,C

Sql Server 2008 R2数据库损坏修复成功

Sql Server 2008 R2数据库损坏修复成功案例 2016.4月 青岛某连锁店使用的SQL 2008R2数据库,客户在正常使用中突然服务器断电导致的损坏,再次附加发现数据库报错不能正常运行,客户那边管理员自己尝试了修复以及重建日志但是故障依旧,后来发现自己解决不了,通过百度搜索,联系到我们进行处理. 我们的工程师具体查看了一下,数据库大小600M左右,底层数据看了一下基本正常,先用工具检测看下页面损坏情况,如下图: 我们可以看到确实是有页面损坏,直接新建库替换重新生成日志在看损坏情况如

SQL Server 2008 R2数据库镜像部署图文教程

数据库镜像是一种针对数据库高可用性的基于软件的解决方案.其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中 概述 “数据库镜像”是一种针对数据库高可用性的基于软件的解决方案.其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中.建议使用不同位置的两台服务器来承载.在同一时刻,其中一台上的数据库用于客户端访问,充当“主体服务器”角色:而另一台则根据镜像会话的配置和状态,充当热备份服务器,即“镜像服务器角色”,这两

第四篇 SQL Server代理配置数据库邮件

本篇文章是SQL Server代理系列的第四篇,详细内容请参考原文. 正如这一系列的前几篇所述,SQL Server代理作业是由一系列的作业步骤组成,每个步骤由一个独立的类型去执行.SQL Server代理同样提供创建警报,能够以通知的形式将消息发送给设定的操作员.这些通知可以通过数据库邮件发送,数据库邮件是内置在SQL Server和SQL Server代理能够发送和接收电子邮件.在这一篇,你将学习如何配置数据库邮件发送和接收操作,以及一些基本的数据库邮件故障排除步骤.数据库邮件的简要概述在S