当您遇到硬盘故障和服务器关闭时需要了解恢复过程的工作原理。
我们运行MSSQL2005服务器。我们每晚都进行完整备份,每小时记录一次。
在备份之前(2)小时,Raid 5存储驱动器上出现磁盘故障。服务器关闭后,数据库重新启动,但失败后8小时内没有事务日志。
当我运行DBCC CHECKDB时,长报告列出:
以下是CHECKDB文件中的最后三个条目。有一长串的扩展条目。
Extent (1:4591784) in database ID 9 is marked allocated in the GAM, but no SGAM or IAM has allocated it.
CHECKDB found 7288 allocation errors and 0 consistency errors not associated with any single object.
CHECKDB found 7288 allocation errors and 0 consistency errors in database.
repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKDB".
最后一次知名的好备份是2天前。我尝试运行还原而不是repair_allow_data_loss,但每次我尝试还原并在数据库上运行完整性检查时,由于同样的原因而失败,并且DBCC CHECKDB文件列出了相同的问题。
我怎样才能超越这个问题?如果我要运行repair_allow_data_loss,我可以丢失多少数据?损失会包括多年的过去数据还是仅仅是失败后的数据?
答案 0 :(得分:0)
在出错后继续备份当前数据库。
BACKUP DATABASE db_name to disk ='Location'with continue_after_error
现在将此备份恢复到不同的服务器上。在此之后,使用repair_allow_data_loss
运行DBCC CHECKDB现在您可以看到删除了多少数据“DBCC CHECKDB with repair_allow_data_loss”来恢复您的数据库。
请在执行此操作之前参考在线文档。