昨天夜间机房断电后SQLServer2008服务器重启,早上Sharepoint系统不能登录,使用SQLServer的管理工具检查后发现,SharePoint_Config数据库上多了一个黄色的三角符号,并提示数据库为质疑/Suspect状态.
立即使用以下SQL脚本进行强制恢复数据库
use master declare @databasename varchar(255) set @databasename='SharePoint_Config' sp_configure 'allow updates',1 reconfigure with override --强制修改数据库状态 update master..sysdatabases set status = 16 where name = @databasename --尝试恢复数据库 dbcc dbrecover(@databasename, IGNOREERRORS)
结果还是质疑/Suspect状态,估计是数据库日志文件有损坏. 好在只是SharePoint_Config数据库,对用户数据没有影响。直接使用了以下方法进行了恢复数据库。
1.停止SQLServer服务
2.到SQLServer的数据库文件夹下备份SharePoint_Config和SharePoint_Config的Log数据
3.启动SQLServer服务
4.删除并创建新的同名SharePoint_Config数据库
5.停止SQLServer服务
6.到SQLServer的数据库文件夹下替换SharePoint_Config为之前备份的SharePoint_Config。
7.启动SQLServer服务
8.设置SharePoint_Config为emergency状态
alter database SharePoint_Config set emergency
9.恢复SharePoint_Config数据库(过程中出现大量恢复错误)
use master declare @databasename varchar(255) set @databasename='SharePoint_Config' --设置为单用户模式 exec sp_dboption @databasename, N'single', N'true' --恢复数据(允许数据丢失) dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) --恢复数据(重建数据库结构) --dbcc checkdb(@databasename,REPAIR_REBUILD) --检查约束 —dbcc checkconstraints --恢复为多用户模式 exec sp_dboption @databasename, N'single', N'false'
10.重新启动SQLServer服务
11.数据恢复完成,手动处理恢复后的数据和备份数据的差分
以上方法只适用于数据库文件完整,Log文件不完整或丢失的情况,如果数据库文件不完整,请注意不要使用。
参考网址
http://blog.csdn.net/htl258/article/details/4136908
http://blog.sina.com.cn/s/blog_75a555e401015o4z.html
--------------------------------------------------------------------------------------
- 版权声明:
- 如在本页面内无特别说明,本文内容均为[李大仁博客]原创,本文版权归[李大仁博客]所有。
- 欢迎转载,转载请务必在文章页面明显位置提供原文链接并注明出处。欢迎您在转载本文时保留本段声明。
- 文章标题:
修复SQLServer2005/2008/2012数据库质疑/Suspect状态
- 独立博客:
李大仁博客
- 永久链接:
http://www.lidaren.com/archives/1499
--------------------------------------------------------------------------------------
以上内容由博客自动发布工具自动发布,最终显示内容和效果会与原文内容有所偏差,敬请谅解。
转载请注明原文地址: https://ju.6miu.com/read-1308399.html