SQL Server数据库还原:"因为数据库正在使用,所以无法获得对数据库的独占访问权"
如题,网上找了一些客套的方法,如果不想去折腾,请看我的方法:
1、先脱机数据库,这个目的就是为了停掉所有链接
2、选择还原数据库,如果提示日志尾部不完整,请选择数据库属性的选项,覆盖现有数据。
还可以尝试以下方法:
一、SQL Server数据库备份还原后,在数据库名称后会出现“受限制访问”字样。
解决办法:
右键点击数据库->【属性】->【选项】->【状态】->【限制访问】->选择【Multiple】->【确定】
二、在对SQL Server数据库进行还原时,提示:System.Data.SqlClient.SqlError:因为数据库正在使用,所以无法获得对数据库的独占访问权。(Microsoft.SqlServer.Smo)。出现此问题的原因是在还原数据库时,有其他用户正在使用数据库。还原数据库要求数据库工作在单用户模式。通常就是DBA在操作时,不允许其他用户连接数据库。
解决办法:
方法一(最方便):右键点击数据库->【属性】->【选项】->【状态】->【限制访问】->选择【Single...】->【确定】。然后还原。(十有八九这个方法是行不通的,如有有很多人连接着,设置后就省下最后一个,那么可能那个人不是你,你还是无法还原)
方法二(最直接):断开数据库连接。
方法三(最暴力):注销/重启数据库服务器。(也可能行不通,如果重启后,你的操作不够快,最后还是给别人先连上了)
方法四(最麻烦):写代码修改数据库相关属性,虽然麻烦,有的时候还是要用到,那就用到的时候再研究。
1、先切换数据库到master数据库。执行语句:
select * from master..sysprocesses where dbid=db_id( '数据库名称')
2、然后逐步运行语句
exec('kill 64')
其中64为上面的spid
方法四点一(最麻烦的第二种选择):还是写代码,一个全自动脚本:
declare @dbname varchar(50)
set @dbname='数据库名称'
declare @sql varchar(50)
declare cs_result cursor local for select 'kill '+cast(spid as varchar(50)) from sys.sysprocesses where db_name(dbid)=@dbname
open cs_result
fetch next from cs_result into @sql
while @@fetch_status=0
begin
execute(@sql)
fetch next from cs_result into @sql
end
close cs_result
deallocate cs_result
方法四点二:(这个方法没试过)利用SQL语句,断开所有用户链接,并回滚所有事务,具体SQL语句如下:
alter database [数据库名称]
set OFFLINE with rollback IMMEDIATE
注意:以上操作全部在master数据库上操作。
SQL Server数据库还原:"因为数据库正在使用,所以无法获得对数据库的独占访问权"的更多相关文章
- SQL2005:SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法
SQL2005 还原数据库失败,提示如下: SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法 出现错误时操作步骤为:右击数据库--->任务- ...
- SQL点滴12—SQL Server备份还原数据库中的小把戏
原文:SQL点滴12-SQL Server备份还原数据库中的小把戏 备份数据库时出现一个不太了解的错误 ,错误信息“is formatted to support 1 media families, ...
- SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法
SQL2005 还原数据库失败,提示如下: SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法 出现错误时操作步骤为:右击数据库--->任务- ...
- 在SQL Server 2014下面使用的SQL2000的Northwind和Pubs示例数据库
在SQL Server 2014下面使用的SQL2000的Northwind和Pubs示例数据库 http://files.cnblogs.com/files/lxzhangying/SQl2000S ...
- 02Microsoft SQL Server 安装,卸载,系统服务,系统组件及系统数据库
Microsoft SQL Server 安装,卸载,系统服务,系统组件及系统数据库 1. Microsoft SQL Server 安装 通过单击下拉框,选择浏览,然后在Active Directo ...
- SQL Server的还原
原文:SQL Server的还原 1.差异备份的还原 不备份结尾日志的情况下还原数据 创建差异备份的放在我们已经在前面一篇博客SQL Server的备份中提到了,这里我们不再赘述,下面我们给出差异备份 ...
- SQL Server 备份还原
SQL Server支持三种备份方式 完全备份: 差异备份 事务日志备份 一般备份方式为,完全备份/每周,差异备份/每天,事务日志备份/按分钟计,这样可确保备份的高效性和可恢复性. 1. 完全备份 备 ...
- Sql Server 备份还原失败错误ERROR:3145(备份集中的数据库备份与现有的数据库不同)及解决办法
SQL Server备份文件bak,备份后还原出现错误3145,备份集中的数据库备份与现有的 'xxx' 数据库不同. 解决办法如下: 1,新建一个与现有数据库重名的数据库. 如果您不知道数据库名称, ...
- Sql Server 2008 还原数据库 3154错误
sqlserver2008还原数据库时出现了3154错误,具体错误信息如下: 错误信息 The backup set holds a backup of a database other than t ...
- SQL Server备份还原数据库中的小把戏
备份数据库时出现一个不太了解的错误 ,错误信息“is formatted to support 1 media families, but 2 media families are expected ...
随机推荐
- NGUI Sprite Type(Simple、Sliced、Tiled、Filed、Advanced)
官方文档:http://www.tasharen.com/forum/index.php?topic=6704.0 Sprite Type 下面是UISprite的Type截图,每一种Type都有不同 ...
- 啊D工具语句 适合Access和Mssql注入
啊D注入工具中使用的SQL注入语句 爆user )) )= | ***** ?Id)) : ?Id : Id 检查SA权限:)))) 爆当前库: )) -- 检查是否为mssql数据库:and exi ...
- Adivisor
1.Adivisor是一种特殊的Aspect,Advisor代表spring中的Aspect 2.区别:advisor只持有一个Pointcut和一个advice,而aspect可以多个pointcu ...
- f2fs解析(二)f2fs写checkpoint时如何冻住整个文件系统
函数write_checkpoint中,会调用block_operations,函数中有这样一段代码: retry_flush_dents: f2fs_lock_all(sbi); /* write ...
- Css 常用属性
1. overflow:hidden和zoom:1 verflow:hidden;的作用 1. 隐藏溢出 :2.消除浮动 <style type="text/css"> ...
- 无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。
新建一个MVC4的项目,引用DAL后,将DAL的连接字符串考入: <connectionStrings> <add name="brnmallEntities&qu ...
- 一款Android开源的下拉刷新动画
无意间在GitHub看到的,就Down了下来.但是作者是用AndroidStudio开发的,这边移动Eclipse供小伙伴们下载使用. 截图 这么好的东西因为字数不够不让分享,得了,贴段代码吧 pac ...
- Java系列:JVM指令详解(上)(zz)
一.未归类系列A 此系列暂未归类. 指令码 助记符 说明 59:iastore 60:lload 6 //因为str ...
- 学习笔记——Maven pom.xml配置详解
POM的全称是“ProjectObjectModel(项目对象模型)”. pom.xml详解 声明规范 <projectxmlns="http://maven.apache.org/P ...
- 7天学会spring cloud教程
按照官方的话说:Spring Cloud 为开发者提供了在分布式系统(如配置管理.服务发现.断路器.智能路由.微代理.控制总线.一次性 Token.全局锁.决策竞选.分布式会话和集群状态)操作的开发工 ...