1TB 卷损坏的问题:我们可以拯救 SQL 数据库吗?

1TB 卷损坏的问题:我们可以拯救 SQL 数据库吗?

我们有一个实例,其中 1TB 卷不知何故损坏了。系统事件查看器中有事件 ID 55 错误。运行时chkdsk,它达到 47% 验证索引并返回到命令提示符。

如果我们无法挽救驱动器上的数据,那么我们有一个前段时间的完整数据库备份。其日志文件位于另一个完好的卷上。

恢复数据库并以某种方式重播日志文件是否可行?我看过关于从日志文件备份 (.trn) 重播日志文件的文章,但我们有实际的日志文件 (.ldf)。如能得到任何帮助,我们将不胜感激。

答案1

要恢复您需要:

  • 完整的数据库备份
  • 自此之后的所有日志备份

日志文件本身不包含任何数据。如果您拥有完整恢复模式,并且自上次完整备份以来日志从未被截断(等等),那么您可能能够回复。

但是,您很可能因为没有备份而丢失了数据。第三方的欺骗手段再多也无济于事。

答案2

根据我尝试测试此类事情的经验,没有。当尝试执行类似操作时,我会收到一条错误消息,指出 .ldf 格式不正确。无论我做什么,我都找不到 SQL Server 的标准方法来执行此操作。

我相信有第三方工具可以读取日志文件来帮助您恢复数据。我从未使用过,所以我不想提供建议,但这可能是您恢复数据的最佳选择。

答案3

这取决于硬盘损坏的严重程度。我们曾使用星辰凤凰&R-Studio对于恢复,R-Studio 似乎更有效。这两个应用程序都会手动读取驱动器并尝试根据找到的内容重新创建文件。恢复过程可能无法恢复文件名和目录结构,因此查看已恢复的文件并找到所需内容可能非常耗时。

如果应用程序无法物理读取驱动器的某个部分,那么位于该部分的任何数据都将无法恢复。此时,下一个选项是将驱动器发送到数据恢复服务。我们使用了 DriveSavers,但还有很多其他服务。

对于 SQL,除非恢复的文件来自数据库备份,否则它们很可能处于不一致的状态,可能需要其他操作才能获取数据。我无法对这个过程发表评论,因为我的专业知识有限。

相关内容