小编Leg*_*ude的帖子

是否可以从事务日志(无 MDF)中恢复 SQL Server DB?

我们有一个 SQL Server 2005 服务器,其中包含大约 200 个低流量/无流量存档数据库,并且该服务器没有备份到任何其他设备。数据库文件(MDF 和 LDF)存储在 RAID 阵列上,当 RAID 控制器出现故障时,我们担心会丢失数据。我们将 RAID 控制器和阵列发送给数据恢复公司,他们能够恢复大部分文件,但在某些情况下,我们有事务日志,但缺少主要数据文件。

是否可以仅使用事务日志将数据库恢复到最后一个事务(应该是在创建数据库之后),或者这是无法完成的事情?

sql-server-2005 sql-server recovery restore transaction-log

7
推荐指数
1
解决办法
542
查看次数

重新附加从 RAID 5 恢复的 MDF 文件

我们公司多年来一直在运行 SQL Server 2005 服务器,但就在最近,我们遇到了一些麻烦。服务器配置了 RAID 5,阵列中有一个热备盘。其中一个磁盘出现故障,不久之后第二个磁盘也出现故障。不幸的是,我们没有对大部分数据进行备份(请不要说“应该有备份”的评论——我知道一个可靠的备份计划的重要性)。

所以我们两个磁盘都挂了,我们没有正式的 DBA,数据库也无法访问。我们的一名 IT 人员试图恢复 RAID 阵列,我们认为 RAID 开始重建,但他被命令将其关闭,因为担心在 RAID 重建期间可能会丢失数据。

我们将整个服务器发送给了一家数据恢复公司。他们花了两周时间在服务器上工作,首先对所有驱动器进行成像,然后从 RAID 重建数据。

我收到了一个包含所有“恢复”文件的硬盘。这是主要是数据库文件 (MDF) 和传输日志 (LDF) 的集合。服务器上的每个数据库仅包含一个 MDF 和一个 LDF。我目前无法访问原始服务器,因此我一直试图将这些数据库附加到另一台运行 SQL Server 2005 的服务器。但是,当我尝试重新附加任何数据库时,我遇到了问题。我收到的一些错误如下所示。我没有运气恢复任何这些文件。我按照本文中概述的步骤操作,即使那样也无法恢复任何文件。

我们向数据恢复公司支付了一大笔钱,用于从这台服务器恢复数据,我的任务是毫无疑问地证明这些数据对我们有用或没用。我只是没有确切的经验,所以我向你提出了一个问题,dba.stackexchange: 有没有办法恢复这些文件?

SQL Server 检测到基于逻辑一致性的 I/O 错误:pageid 不正确(预期为 1:134;实际为 0:0)。它发生在读取文件 'G:\Data\Data201309.mdf' 中偏移量 0x0000000010c000 处的数据库 ID 17 中的页面 (1:134) 期间。SQL Server 错误日志或系统事件日志中的其他消息可能会提供更多详细信息。这是威胁数据库完整性的严重错误情况,必须立即纠正。完成完整的数据库一致性检查 (DBCC CHECKDB)。此错误可能由多种因素引起;有关详细信息,请参阅 SQL Server 联机丛书。


文件“G:\Data\Data201112_log.ldf”的标头不是有效的数据库文件标头。PageAudit 属性不正确。(Microsoft SQL Server,错误:5172)


G:\Data\Data201005.mdf 不是主数据库文件。(Microsoft SQL Server,错误:5171)


处理数据库“Data201008”的日志时出错。如果可能,从备份中恢复。如果备份不可用,则可能需要重建日志。


SQL Server 检测到基于逻辑一致性的 I/O 错误:校验和不正确(预期:0xe9b50f3a;实际:0x162a0f84)。它发生在读取文件“G:\Data\Data200803.mdf”中偏移量 0x000000f9a00000 处的数据库 ID 17 中的页面 …

sql-server-2005 sql-server recovery corruption

3
推荐指数
1
解决办法
921
查看次数