IBSurgeon FirstAID 8.0
IBSurgeon FirstAID 自动诊断并修复损坏的 Firebird 和 InterBase 数据库--包括 gbak 和 gfix 无法修复的损坏。它在不依赖 Firebird/InterBase 引擎的低级别层面工作,因此您可以在购买前预览数据,并恢复您所看到的内容。
购买与许可
按您恢复的每个数据库文件授权。HQbird 包含 50 次恢复的 FirstAID;企业订阅计划也包含恢复工具包容量。升级 · 完整购买页面
如何修复数据库
- 下载 FirstAID--无需注册。
- 打开损坏的数据库,双击表,浏览数据页。
- 如果数据看起来正确,购买许可证(许可证邮件通常约 15 分钟内发送)。所见即所得。
- 运行修复前,请先阅读恢复指南(左侧)。
两种恢复模式
直接修复
通过修复损坏的内部链接,就地修复原始文件。速度快:修复后,运行 gfix / gbak 进行干净的备份/恢复。适用于许多常见损坏情况。
数据提取
适用于严重损坏或元数据丢失:预览表,然后将可恢复的用户数据导出到具有相同结构的新空数据库中。仅使用少量系统表来解码数据。
当数据在预览中可见时,FirstAID 在超过 95% 的情况下可以恢复损坏的 Firebird/InterBase 数据库。
视频:使用 FirstAID 修复 Firebird 数据库
损坏的表现形式
损坏通常意味着内部结构之间的链接断裂。当引擎遇到缺失的记录或页面时,会停止并显示类似 Internal gds software consistency check (…) 或 Internal Firebird software consistency check (…) 的消息--这些消息来自 gbak、gfix / firebird.log 或应用程序。请参阅完整的严重 Firebird/InterBase 错误列表。
当 gfix 和 gbak 无法完成任务时,FirstAID 会绕过崩溃点,修复链接或导出用户数据。
技术要求
- Windows 应用程序(Windows 7 或更高版本)--可恢复 Windows 或 Linux 服务器上的数据库(将文件复制到 Windows 机器上)
- 建议 8 GB 或更多 RAM
- 建议使用 SSD 以获得更快的恢复速度
FirstAID 处理的常见损坏
| 症状 / 错误 | 典型处理方法 |
|---|---|
| 找不到提示页 (165) | 直接修复 |
| 数据库页校验和错误 / 校验和不匹配 | 直接修复;严重时提取数据 |
| 解压缩超出缓冲区 (178);记录长度错误 (183) | 提取数据 |
| 未知 I/O / 文件被截断(末尾页丢失) | 直接修复(重建系统页) |
| 页类型错误(期望 X,实际为 Y) | 直接修复 |
| 记录碎片损坏;找不到旧版本 | 提取数据 / 修复记录 |
| 指针页丢失 (256);无效的 BLR | 提取数据 / 重新编译或完整导出 |
| nbackup 合并 / “不在物理备份模式” | FirstAID + 指南步骤 |
更多错误代码:严重 Firebird/InterBase 错误列表。
直接修复后:gfix 和 gbak
在直接修复后运行 gfix(提取数据时跳过此步骤--导出目标已是干净的)。然后进行经过验证的 gbak 备份,并恢复到新文件。
gfix(直接修复后)
gfix -v -full -ig -user SYSDBA -pass your_pass Path_to_database gfix -mend -ig -user SYSDBA -pass your_pass Path_to_database
摘要行(记录 / 索引 / 事务 / BLOB / 页错误)仅供参考;即使 gfix 报告问题,也请继续执行 gbak。
gbak
gbak -b -g -ig -user SYSDBA -pass your_pass Path_to_database Path_to_backup gbak -c -user SYSDBA -pass your_pass Path_to_backup Path_to_database
完整详情:FirstAID 恢复指南。