在硬盘故障和服务器关闭时,需要一些帮助来了解还原过程是如何工作的。
我们运行MSSQL2005服务器。我们每晚进行一次完整备份,每小时记录一次。
Raid 5存储驱动器上的磁盘出现故障,(2)在备份前几个小时。服务器关闭后,数据库恢复联机,但在故障后的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,我可能会丢失多少数据?损失是包括过去几年的数据,还是仅包括自故障发生以来的数据?
发布于 2015-02-18 09:12:22
备份当前数据库,并在出错后继续。
使用continue_after_error将数据库位置备份到db_name =‘Location’
现在在不同服务器上还原此备份。之后,使用repair_allow_data_loss运行DBCC CHECKDB
现在您可以看到"DBCC CHECKDB with repair_allow_data_loss“删除了多少数据来恢复您的数据库。
在执行此操作之前,请参考在线文档。
https://stackoverflow.com/questions/28546392
复制