服务器IBM 3850中Oracle 11.2.0.2数据库恢复成功
【单位】 上海某金融公司
【物理与逻辑存储】 客户使用一台IBM 3850服务器,4块300GB SAS磁盘做的RAID5。 服务器操作系统为 windows2003 x64,跑有一个单节点Oracle,oracle版本为11.2.0.2 ,数据存储为文件系统,无归档。此oracle数据量不大,oracle 内只有一个用户建的用户,使用oracle默认的users 表空间,users 表空间下仅有一个数据文件,大小不到 1GB。
【故障现象】 由于负荷过重,存储底层的RAID出现问题,用户为了挽救数据做了一系列重建RAID的操作,后因一磁盘出现故障而中止RAID初始化,但有少量数据被同步而破坏,此时RAID已可访问,系统虽出现错误,但能正常启动,但D盘也就是oracle数据库所在分区报错无法打开,客户chkdsk后能正常打开,但oracle无法启动,客户在原盘上重装了 oracle系统,并导入了以前备份的 dmp文件,但数据差得太多,被否定后,管理员已黔驴技穷。
【数据恢复过程】
1.分析管理员每一步所做的操作带来破坏与否和破坏程度。 分析RAID层: 重建RAID会带来最为严重的破坏,但分析发现重建的RAID的块大小、盘序都和原来一样,而在初始化过程中仅同步了前部的少量数据,RAID层损坏不大,数据库还没被破坏。 分析后面管理员对分区chkdsk和重装oracle系统和导入 dmp文件所带来的破坏: Chkdsk并不会破坏用户数据区,chkdsk只对文件系统元数据区修改。这时数据库文件仍无破坏,最多只是文件的MFT或目录项被破坏。最严重的是重装 Oracle系统和导入dmp文件,这不只是对 文件系统元数据区进行破坏,还对用户数据区进行覆盖。 对D盘的NTFS文件系统进行分析: 发现原所有oracle数据文件的的MFT均被覆盖,NTFS日志也早被轮回覆盖,从NTFS元数据区找不到可利用信息。只能使用北亚数据恢复中心内部的Oracle恢复程序对整个分区进行恢复。 2.经扫描,发现 Oracle实例为 ANSORA,扫描出的一个原始完整的控制文件和一个原始完整的undotbs表空间数据文件,重要的system和 users表空间数据文件都有不同程度的破坏,其中system表空间的数据文件仅剩中后部的10MB,原始应有约700MB,而 users 表空间的数据文件也有部分被覆盖,但仅4MB。 3.提取出找到了数据,下一步对严重损坏的数据库进行修复。由于 system表空间不可用,无法得到数据字典,在和客户沟通后,客户确认了重要的三张表,这三张表也较大,从客户imp回去的数据库中得到了这三张表的结构,再从恢复 users表空间的数据文件中找到对应的segment,但有一张表死活无法对应上,再次询问客户,客户表示这一张表有过更改字段的操作,再构建新的表结构对应上users表空间数据文件中segment,然后通过 oracle官方的dul工具提取这三张表的数据,客户验证后,表示数据已无问题。
【结果】 耗时三天,用户指定数据99%以上恢复成功。
【数据恢复工程师】 北亚数据恢复中心- 张工 联系方式:18515283878,01082488249-804; dq@frombyte.com; QQ: 77292961 工程师ID:804 北亚数据恢复中心服务电话:4006505646
【数据恢复服务承诺】 1. 免费检测 2. 与客户签订保密协议,对客户的数据严格保密 3. 数据恢复不成功不收费 4. 专业工程师提供服务 5. 数据恢复前报价,客户确认后工程师开始数据修复 6. 整个恢复过程不会对客户的原盘有任何的写操作,以确保原盘的数据完全 |