数据库还原问题

zoujp_xyz 2008-08-04 08:51:07
还原数据库时。出现:
因为数据库正在使用,所以未能获得对数据库的排它访问权。
restore database 操作异常终止
重启服务也是不行。

如何解决啊?
...全文
78 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoujp_xyz 2008-08-04
  • 打赏
  • 举报
回复
好了,谢谢各位了
zhou968 2008-08-04
  • 打赏
  • 举报
回复
先转到其他数据库上,杀死进程并还原后再返回原来的数据库。
jzlzss 2008-08-04
  • 打赏
  • 举报
回复
在企业管理器上分离数据库,这时会有个选项,断开数据库的连接,断开之后就可还原了.
utpcb 2008-08-04
  • 打赏
  • 举报
回复
还原前先杀死占用进程!
有别人 在使用这个数据库 或者你在使用!
比如你把查询分析器打开 连到这个数据库上都不行的
zoujp_xyz 2008-08-04
  • 打赏
  • 举报
回复
之前我试过了,提示是不能kill 掉自己的进程。
hyqwan11112 2008-08-04
  • 打赏
  • 举报
回复
可以重新建一个空库,然后在上还原就是,在选项中把覆盖原来的库选上即可.
zhou968 2008-08-04
  • 打赏
  • 举报
回复
还有,如果你在当前的数据库上还原当前使用的数据库是还原不了的,要到别的数据库上还原然后再返回
zhou968 2008-08-04
  • 打赏
  • 举报
回复
还原前先杀死占用进程
zhou968 2008-08-04
  • 打赏
  • 举报
回复

--杀死占用进程
declare #spid cursor for
select spid=cast(spid as varchar(20)) from master..sysprocesses where dbid=db_id(@db);
open #spid
fetch next from #spid into @spid;
while @@fetch_status=0
begin
exec('kill '+@spid);
fetch next from #spid into @spid;
end
close #spid;
deallocate #spid;
set @iscreate=0;
zb63668331 2008-08-04
  • 打赏
  • 举报
回复
如果不行,在别的机器上恢复后分离,再到这台服务器上附加看看
zb63668331 2008-08-04
  • 打赏
  • 举报
回复
重新建个数据库恢复看看

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧