SQLServer数据库处于恢复挂起状态的解决办法

所属分类: 数据库 / MsSql 阅读数: 790
收藏 0 赞 0 分享

一、总结

  如果数据库处于一个恢复挂起的状态,并且对数据库做脱机和分离的操作,报出数据库文件不可访问的错误,可能是因为数据库的数据文件和日志文件在数据库正常连接的情况下,文件所在的磁盘脱机了,导致数据库在一段时间内找不到数据库的文件,就把数据库置于一个恢复挂起的状态了,所以磁盘联机后,重启数据库服务,重新去找数据文件和日志文件找到了,数据库就可用了。

二、处理步骤

1、数据库恢复挂起截图

  

2、出现恢复挂起的原因

 我这里的数据库出现这种原因,是因为我的数据库数据文件和日志文件是在存储上放着的,当时存储升级微码,所以暂时把该机器上挂载的存储盘脱机了(脱机升微码快),存储微码升级好后,磁盘再次联机,重启机器,数据库服务也自动重启了,登录SSMS客户端,查看数据库的状态就是恢复挂起状态了。

3、处理步骤

(1)尝试restore数据库失败,提示数据库是离线状态

  脚本:restore database run with recovery

(2)对数据库做脱机操作,报错

注: 如果能对数据库脱机成功,再次联机也有可能解决,要看数据库是什么原因导致数据库恢复挂起的。

(3)对数据库做分离操作,也报错同样的错误

  

注: 以上对数据库脱机和分离都报出数据库文件不可访问的错误,查看磁盘文件,发现文件是存在的

(4)迫不得已,所以对数据库服务做了重启

注: 重启数据库服务后,发现数据库好了,可以用了,大功告成!

以上所述是小编给大家介绍的SQLServer数据库处于恢复挂起状态的解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

更多精彩内容其他人还在看

sql Set IDENTITY_INSERT的用法

SET IDENTITY_INSERT 允许将显式值插入表的标识列中。
收藏 0 赞 0 分享

sql 修改表的所有者

有时候因为一些权限问题,需要修改表的所有者,下面的方法不错
收藏 0 赞 0 分享

过程需要参数 '@statement' 为 'ntext/nchar/nvarchar' 类型

过程需要参数
收藏 0 赞 0 分享

mssql 建立索引第1/2页

假设你想找到本书中的某一个句子。你可以一页一页地逐页搜索,但这会花很多时间。而通过使用本书的索引,你可以很快地找到你要搜索的主题。
收藏 0 赞 0 分享

SQL Server 索引结构及其使用(一)--深入浅出理解索引结构第1/4页

深入浅出理解索引结构
收藏 0 赞 0 分享

SQL Server 索引结构及其使用(二) 改善SQL语句第1/3页

很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解。
收藏 0 赞 0 分享

获取MSSQL数据字典的SQL语句

获取MSSQL数据字典的实现方法。
收藏 0 赞 0 分享

Microsoft Search 服务无法启动 解决办法.

尝试用正常系统的注册表项添加到非正常系统中去。(因为对比的两个系统版本、结构相同,所此次就直接通过导入导出注册表项进行批量修改)。
收藏 0 赞 0 分享

找出所有非xml索引并重新整理的sql

找出所有非xml索引
收藏 0 赞 0 分享

SQL Server提示"选定的用户拥有对象,所以无法除去该用户”

今天在帮朋友弄一台服务器的时候当我需要删除一个数据库里的用户时,提示如下错误信息: "选定的用户拥有对象,所以无法除去该用户" 如何解决呢?
收藏 0 赞 0 分享
查看更多